Apparatus and methods for surface contour measurements

ABSTRACT

Apparatus and methods of measuring three-dimensional position information of a point on the surface of an object. The invention also relates to an apparatus for projecting fringes onto a surface of an object including two sources of radiation separated by a distance, each source having a spectral distribution, and being coherent with respect to the other of the sources, a control system moving each of the sources relative to the other of the sources, and a detector positioned to receive radiation scattered from the point on the surface of the object. In another embodiment, the two sources of radiation include, an initial source of a beam of radiation having a spectral width, a beam separator in optical communication with the initial source of a beam of radiation generating a first optical beam and a second optical beam, and an imaging system optically connected to the beam separator.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.09/480,043 which was filed on Jan. 10, 2000, now U.S. Pat. No.6,690,474, which is a continuation-in-part of Ser. No. 09/241,354, nowU.S. Pat. No. 6,031,612 which was filed on Feb. 2, 1999 which is acontinuation-in-part of application Ser. No. 08/600,216, now U.S. Pat.No. 5,870,191 which was filed on Feb. 12, 1996 and claims priority toprovisional U.S. patent application No. 60/087,960 which was filed Jun.4, 1998, the disclosures of which are incorporated by reference herein.

GOVERNMENT SUPPORT

Work described herein was supported by Federal Contract No.F19628-95-L-002, awarded by the United States Air Force. The Governmentmay have certain rights in the invention.

FIELD OF THE INVENTION

The invention relates to the field of surface measurement and, morespecifically, to the field of non-contact surface measurement.

BACKGROUND OF THE INVENTION

Dimensional metrology, the measurement of the size and shape of objects,is very important in today's manufacturing environment in which machinesperform much of the fabrication and assembly of complex objects composedof many subassemblies. The shape and size of each component in a complexassembly, such as an automobile, must be held to close tolerances toensure that the components fit together properly.

Ideally such measurements of shape and size are accomplished withoutphysical contact in order to save time in making the measurement. Manynon-contact measurement methods make use of available machine visionsystems. The measurement of surface contour information is an especiallydifficult problem in machine vision systems since depth information isoften lost or is difficult to interpret. To compensate for the loss ofdepth information and the difficulty in interpreting the informationwhich is available, many machine vision systems utilize light to createmoire patterns on the surface of the object in order to obtain contourinformation. One disadvantage of the moire technique is itsinflexibility with respect to objects of different sizes. Objects ofdifferent sizes may require new corresponding physical setups. Due tothis disadvantage, it is difficult to use a moire technique forlarge-scale objects. Another disadvantage of a moire technique is thatthe resolution obtained using the technique may not be high enough formany applications

Interferometric methods have also been used when detailed measurementsof the surface are needed. Although interferometric systems providesurface contour information, they are sensitive to vibrations in boththe object being measured and the source of illumination being used.

What is needed is a technique which avoids these problems by resolvingfringe order ambiguities, mitigating degradation due to speckle effectsand attaining high resolution.

SUMMARY OF THE INVENTION

The invention is related to a method for determining, on an objecthaving a surface, three-dimensional position information of a point onthe surface of the object including the steps of providing two sourcesof radiation having a spatial distribution of spectral regions,illuminating the surface with radiation from each of the sources toproduce a first fringe pattern at a first position on the surface,moving the first fringe pattern to a second position, generating a firstwrapped cycle map in response to the first and second positions of thefirst fringe pattern, estimating fringe numbers in the first fringepattern, changing the first fringe pattern to generate a second fringepattern at a first position, moving the second fringe pattern to asecond position, generating a second wrapped cycle map in response tothe first and second positions of the second fringe pattern, estimatingfringe numbers in the second fringe pattern in response to the estimatedfringe numbers in the first fringe pattern, and determiningthree-dimensional position information of the point on the surface inresponse to the estimated fringe numbers in the second fringe patternand the second wrapped cycle map.

The invention is further related to a method for synthesizing a wrappedcycle map corresponding to a fringe pattern of a predetermined spacingon a surface including the steps of providing two sources of radiationhaving a spatial distribution of spectral regions, illuminating thesurface with radiation from each of the sources to produce a firstfringe pattern at a first position on the surface, moving the firstfringe pattern to a second position on the surface, generating a firstwrapped cycle map in response to the first and second positions of thefirst fringe pattern, changing the first fringe pattern to generate asecond fringe pattern at a first position, moving the second fringepattern to a second position, generating a second wrapped cycle map inresponse to the first and second positions of the second fringe pattern,subtracting the second wrapped cycle map from the first wrapped cyclemap, and wrapping the difference between the second wrapped cycle mapand the first wrapped cycle map to generate a wrapped cycle mapcorresponding to the fringe pattern of the predetermined spacing.

The invention further relates to a method for determining, on an objecthaving a surface, three-dimensional position information of a point onthe surface of the object including the steps of generating a first anda second beam of radiation having a first frequency and being coherentwith respect to one another, illuminating the surface with the secondbeam of radiation, generating a first interference pattern at a firstposition in response to the first beam of radiation and radiation fromthe second beam of radiation scattered by the surface, moving the firstinterference pattern to a second position, generating a first wrappedcycle map in response to the first and second positions of the firstinterference pattern, estimating intensity cycles in the firstinterference pattern, changing the first interference pattern togenerate a second interference pattern at a first position, moving thesecond interference pattern to a second position, generating a secondwrapped cycle map in response to the first and second positions of thesecond interference pattern, estimating intensity cycles in the secondinterference pattern in response to estimated intensity cycles in thefirst interference pattern, and calculating three-dimensional positioninformation in response to the estimated intensity cycles in the secondinterference pattern and the second wrapped cycle map.

The invention further relates to a method for determining, on an objecthaving a surface, three-dimensional position information of a point onthe surface of the object including the steps of generating a first anda second beam of radiation being coherent with respect to one another,illuminating the surface with the second beam of radiation, generating afirst interference pattern in response to the first beam of radiationand radiation from the second beam of radiation scattered by thesurface, phase shifting one of the first and second beams of radiationwith respect to the other of the first and second beams of radiation togenerate a first phase shifted interference pattern, generating a firstwrapped cycle map in response to the first interference pattern and thefirst phase shifted interference pattern, changing the firstinterference pattern to generate a second interference pattern, phaseshifting one of the first and second beams of radiation with respect tothe other of the first and second beams of radiation to generate asecond phase shifted interference pattern, generating a second wrappedcycle map in response to the second interference pattern and the secondphase shifted interference pattern, subtracting the second wrapped cyclemap from the first wrapped cycle map, and wrapping the differencebetween the second wrapped cycle map and the first wrapped cycle map togenerate a wrapped cycle map.

The invention also relates to an apparatus for projecting fringes onto asurface of an object including two sources of radiation having aspectral distribution, a collimator in optical communication with thetwo sources, the collimator generating two substantially collimatedbeams of broadband radiation, a diffractive grating in opticalcommunication with the collimator, and a lens in optical communicationwith the diffractive grating, the lens generating two images ofradiation having a spatial distribution of spectral regions.

The invention also relates to a method for projecting fringes onto asurface of an object including the steps of providing two sources ofradiation separated by a distance and generating radiation having aspectral distribution, collimating the radiation to generate twosubstantially collimated beams of radiation, delineating spectralcomponents of the collimated beams of radiation, and generating twoimages of radiation having a spatial distribution of spectralcomponents.

The invention further relates to a method for determining, on an objecthaving a surface, three-dimensional position information of a point onthe surface of the object including the steps of projecting a firstcyclical pattern to produce a first projected pattern at a firstposition on the surface, moving the first projected pattern to a secondposition, generating a first wrapped cycle map in response to the firstand second positions of the first projected pattern, estimating cyclenumbers in the first projected pattern, changing the first projectedpattern to generate a second projected pattern at a first position,moving the second projected pattern to a second position, generating asecond wrapped cycle map in response to the first and second positionsof the second projected pattern, estimating cycle numbers in the secondprojected pattern in response to the estimated cycle numbers in thefirst projected pattern, and determining the surface in response to theestimated cycle numbers in the second projected pattern and the secondwrapped cycle map.

The invention further relates to a method for synthesizing a wrappedcycle map corresponding to a projected cyclical pattern of apredetermined spacing on a surface including the steps of projecting afirst cyclical pattern to produce a first projected pattern at a firstposition on the surface, moving the first projected pattern to a secondposition on the surface, generating a first wrapped cycle map inresponse to the first and second positions of the first projectedpattern, changing the first projected pattern to generate a secondprojected pattern at a first position, moving the second projectedpattern to a second position, generating a second wrapped cycle map inresponse to the first and second positions of the second projectedpattern, subtracting the second wrapped cycle map from the first wrappedcycle map, and wrapping the difference between the second wrapped cyclemap and the first wrapped cycle map to generate a wrapped cycle mapcorresponding to the projected cyclical pattern of the predeterminedspacing.

The invention further relates to a method for mitigating the effects ofspeckle on a measurement of a point on a surface of an object includingthe steps of generating a coherent fringe pattern, projecting thecoherent fringe pattern along an optical path onto the surface of theobject such that the fringe pattern substantially grazes the surface ofthe object, and detecting the fringe pattern and the speckle in an imageof the surface of the object, where a normal to the surface of theobject is substantially orthogonal to the optical path.

The invention further relates to a method for mitigating the effects ofspeckle on a measurement of a point on a surface of an object includingthe steps of generating a coherent fringe pattern from two sources ofradiation separated by a distance, projecting the coherent fringepattern onto the surface of the object, detecting the fringe pattern andthe speckle in an image of the surface of the object, translating thetwo sources such that the fringe pattern remains substantiallystationary and the speckle changes, detecting the new fringe pattern andthe changed speckle in an image of the surface of the object, anddetermining the fringe pattern substantially without speckle in responseto the detected fringe patterns and the change in speckle.

The invention also relates to a method for mitigating the effects ofspeckle on a measurement of a point on a surface of an object includingthe steps of generating a coherent fringe pattern from two sources ofradiation separated by a distance, projecting the coherent fringepattern onto the surface of the object, detecting the fringe pattern andthe speckle in an image of the surface of the object, translating theobject laterally with respect to the two sources of radiation along apath parallel to the equiphase plane of the fringe pattern such that thefringe pattern remains substantially stationary with respect to thesurface of the object and the speckle changes, detecting the new fringepattern and the changed speckle in an image of the surface of theobject, and determining the fringe pattern substantially without specklein response to the detected fringe patterns and the change in speckle.

The invention also relates to a method for mitigating the effects ofspeckle on a measurement of a point on a surface of an object includingthe steps of projecting a coherent fringe pattern onto the surface ofthe object, providing a lens having a transmission function having agradual transmission drop off at the lens edge, and detecting the fringepattern in an image of the surface of the object, where the transmissionfunction substantially reduces the speckle influence on the measurement.

The invention also relates to a method for mitigating the effects ofspeckle on a measurement of a point on a surface of an object includingthe steps of generating a first fringe pattern from two sources ofradiation having a first frequency and separated by a distance, changingthe first fringe pattern to generate a second fringe pattern by changingthe first frequency to a second frequency, and changing the distance inresponse to the difference between the first frequency and the secondfrequency, where the ratio of the distance to the difference between thefirst frequency and the second frequency is substantially constant.

The invention further relates to a method for projecting fringes onto asurface of an object including the steps of providing two sources ofradiation separated by a distance, having a spectral distribution, andbeing coherent with respect to the other of the sources, illuminatingthe point on the surface of the object with the radiation from each ofthe sources, moving one of the sources relative to the other of thesources, and detecting radiation scattered by the point on the surfaceof the object. In another embodiment of the invention, the step ofproviding two sources of radiation includes providing an initial beam ofradiation having a spectral width, generating a first radiation beam ata first beam angle and a second radiation beam at a second beam anglefrom the initial beam of radiation, and imaging the first radiation beamand the second radiation beam to form the two sources of radiation.

The invention also relates to an apparatus for projecting fringes onto asurface of an object including two sources of radiation separated by adistance, each source having a spectral distribution, and being coherentwith respect to the other of the sources, a control system moving eachof the sources relative to the other of the sources, and a detectorpositioned to receive radiation scattered from the point on the surfaceof the object. In another embodiment of the invention, the two sourcesof radiation include, an initial source of a beam of radiation having aspectral width, a beam separator in optical communication with theinitial source of a beam of radiation generating a first optical beamand a second optical beam, and an imaging system optically connected tothe beam separator. The imaging system generates the two sources ofradiation each respective source of radiation corresponding to the firstoptical beam and the second optical beam, respectively.

The invention further relates to a method for determining, on an objecthaving a surface, three-dimensional position information of a point onthe surface of the object including the steps of providing two sourcesof radiation having a spectral distribution and being coherent withrespect to the other of the two sources, providing a detector at thepoint on the surface, illuminating the point on the surface of theobject with the radiation from each of the sources, moving each of thesources relative to each other, detecting the radiation at the point onthe surface of the object, and calculating position information inresponse to the movement of the sources and the radiation detected atthe point on the surface of the object.

The invention further relates to an apparatus for determining, on anobject having a surface, three-dimensional position information of apoint on the surface of the object including two sources of radiationhaving a spectral distribution and being coherent with respect to oneanother, a control system moving each of the sources relative to eachother, a detector positioned at the point on the surface of the objectto receive radiation illuminating the point on the surface of theobject, and a processor receiving signals from the detector, theprocessor calculating position information of the point on the surfaceof the object in response to the movement of the sources and theradiation received at the point on the surface of the object.

BRIEF DESCRIPTION OF THE DRAWINGS

This invention is pointed out with particularity in the appended claims.The above and further advantages of this invention may be betterunderstood by referring to the following description taken inconjunction with the accompanying drawings, in which:

FIG. 1 is a block diagram of an embodiment of the invention for makingsurface contour measurements;

FIG. 2 is a block diagram of an embodiment of a system for producing thetwo sources of radiation shown in FIG. 1;

FIG. 2 a is a block diagram of another embodiment of a system forproducing the two sources of radiation shown in FIG. 1;

FIG. 2 b is a block diagram of yet another embodiment of a system forproducing the two sources of radiation shown in FIG. 1;

FIG. 3 is a block diagram of an embodiment of apparatus for supportingthe two sources of radiation of FIG. 1 at a fixed distance relative toone another;

FIG. 4 is another embodiment of the imaging system in FIG. 1.

FIG. 5 is a block diagram of an alternate embodiment of the inventionfor making surface contour measurements;

FIG. 6 is a flow diagram of an embodiment of the steps utilized by theprocessor of FIGS. 1 and 5 in making surface contour measurements;

FIG. 6 a is one embodiment of a portion of the flow diagram of FIG. 6;

FIG. 6 b is another embodiment of a portion of the flow diagram of FIG.6;

FIG. 6 c is yet another embodiment of a portion of the flow diagram ofFIG. 6.

FIG. 7 is a block diagram of one embodiment of a detector and processorarrangement for use with the systems of FIGS. 1 and 5;

FIG. 7 a is a block diagram of an alternate embodiment of a detector andprocessor arrangement including a multiprocessor for use with thesystems of FIGS. 1 and 5;

FIG. 7 b is a block diagram of another alternate embodiment of adetector and processor arrangement for use in the systems of FIGS. 1 and5;

FIG. 8 is a block diagram of another embodiment of the invention formaking surface contour measurements;

FIG. 9 shows one embodiment of photodetector elements positioned on thesurface of an object in accordance with the embodiment of FIG. 8; and

FIG. 9 a shows another embodiment of photodetector elements positionedon spring arms for use in the embodiment of FIG. 8.

FIG. 10 is a block diagram of yet another embodiment of a system forproducing the two sources of radiation shown in FIG. 1;

FIG. 11 is a block diagram of yet another embodiment of a system forproducing the two sources of radiation shown in FIG. 1; and

FIGS. 12 and 12A are block diagrams of the embodiment of FIG. 1.

FIG. 13 illustrates an embodiment of a series of steps used to performprogressive fringe division.

FIG. 14 is a flowchart of an embodiment of a series of steps used toperform progressive fringe division.

FIG. 14 a is a flowchart of an embodiment of steps used to performprogressive fringe division utilizing fringe synthesis.

FIG. 15 is a flowchart of an embodiment of a method of progressivefringe division using fringe synthesis and frequency tuning.

FIG. 16 illustrates a block diagram of an embodiment of the inventionused in the method of FIG. 15.

FIG. 17 illustrates an embodiment of a broadband interference-fringeprojector of the present invention.

FIG. 18 illustrates one embodiment of a liquid-crystal spatial lightmodulator for use with an embodiment of the invention.

FIG. 19 illustrates one embodiment of two nested double slits for usewith an embodiment of the invention.

FIG. 20 illustrates an embodiment of the invention for generatingaccordion fringe motion.

FIG. 21 illustrates an embodiment of a broadband interference-fringeprojector of the present invention.

FIG. 22 contains graphical representation of fringe number error ΔN as afunction of {circumflex over (φ)}/(2π) for an embodiment of theinvention known as histogram-based derippling.

FIG. 22 a is a graph of the slopes+1 of the curves shown in FIG. 22.

DESCRIPTION OF THE PREFERRED EMBODIMENT

While describing the embodiment of the invention, reference will be madeto “sources” and “sources of radiation.” These terms are meant to referto any source of radiation, including highly localized sources ofradiation.

Referring to FIG. 1, and in brief overview, two sources of radiation P₁and P₂ are separated by a fixed distance D and have spatial coordinatesof (x₁,y₁,z₁) and (x₂,y₂,z₂), respectively. The radiation from each ofthe sources P₁ and P₂ is coherent with respect to the radiation from theother one of the sources. Each source, P₁ and P₂, directs its respectivedivergent beam of radiation 12 and 14 toward a point P₀ on the surfaceof an object 10. The distance from each respective source of radiation,P₁ and P₂, to the point on the surface P₀ is indicated by R₁ and R₂,respectively. ψ is the angle between the line extending from the originto the point P₀ and the line extending between sources P₁ and P₂, θ_(s)is the angle between the z axis and the line extending between thesources P₁ and P₂, and α is the half angle subtended by the sourcepoints as viewed from P₀. Each beam 12, 14 is substantially polarized inthe same direction as the other beam 14, 12 and may be independentlyscannable to simultaneously illuminate different regions on the object10. Alternatively, the entire object 10 may be illuminatedsimultaneously.

Light scattered 20 by the point P₀ is detected by a photodetector 22. Inone embodiment, the photodetector 22 comprises an array of photodetectorelements providing a two dimensional image of the object 10 to bemeasured. In a further embodiment, the array of photodetector elementsis a charge coupled device (CCD). The detector 22 provides an outputsignal 26 comprising one or more individual signals, each one associatedwith a corresponding one of the photodetector elements of the detector22.

In a preferred embodiment, a focusing element 24 is positioned betweenthe point P₀ on the surface of the object 10, and the photodetector 22,so as to image the illuminated portion of the object including point P₀onto the detector 22. Because of the roughness of the surface of theobject, and because the illuminating radiation is coherent, the focusedimage will be speckled. The output signal 26 from the photodetector 22is the input signal to a processor unit 28.

A polarizer 30, in one embodiment, is placed between the focusingelement 24 and the detector 22. Polarizer 30 is oriented in a directionto maximize its coincidence with the principal polarization component ofthe scattered light 20, so as to improve the speckle contrast or thecontrast of the fringe pattern. With this arrangement, thesignal-to-noise ratio associated with light scattered from the surfaceof the object 10 is maximized.

In one embodiment, the processor 28 is a single processor which operateson detector output signals 26 associated with each of the photodetectorelements of the detector array 22. In another embodiment, the processor28 is a multiprocessor having a plurality of individual processors andeach photodetector element provides an input signal to a respective oneof the processors. In yet another embodiment, in which the detector 22is a CCD array, a plurality of the CCD elements provide an input signalto a respective processor of a multiprocessor. With the multiprocessorarrangements, computations on signals from a plurality of individualphotoelements occur substantially simultaneously, thereby enhancing thesignal processing speed.

A control unit 32 controls the operation of the sources of radiation, P₁and P₂, so as to change the phase of the radiation of one of the sourcesrelative to the phase of the radiation from the other source as measuredat the point P₀ on the surface of the object 10. The processor 28 may bein communication with control unit 32 via signal line, or bus 34. Forexample, in certain applications it may be desirable for the processor28 to process signals from the detector 22 at specific times relative tothe scanning of the sources P₁ and P₂ over the surface of the object 10or relative to the rate at which the frequency of the radiation from thesources is swept. Since such scanning and frequency sweeping operationsare controlled by control unit 32, communication between the controlunit 32 and the processor 28 is desirable in these circumstances. Itwill be appreciated that the control unit 32 and the processor 28 may bephysically separate units or, alternatively, may be implemented by asingle processing system.

Referring now to FIG. 2, in one embodiment the sources of radiation P₁and P₂ are formed from the radiation emitted from a tunable laser 40.The radiation beam 44 emitted by the tunable laser 40 is split by a beamsplitter 48. The radiation beam 50 reflected by the beam splitter 48 iscaused to diverge by a lens 52. The divergent beam is then reflected bya moveable aiming mirror 54. The radiation beam reflected by the aimingmirror 54 provides one of the sources of coherent radiation, P₁.Similarly, the radiation beam 46 passing through the beam splitter 48 iscaused to diverge by a lens 58 which directs the divergent beam to asecond moveable aiming mirror 60. The radiation beam reflected by mirror60 provides the second source of radiation, P₂. Aiming mirrors 54 and 62may be pivotable to selectively illuminate the surface of object 10.They may also be moveable to vary the positions of sources P₁ and P₂.

Referring to FIG. 2 a, another embodiment of the sources of radiation P₁and P₂ is shown to include a tunable laser source 40 providing a beam ofradiation 44. The radiation beam 44 passes through a lens 62 whichcauses the beam to diverge, providing divergent beam 64. Divergent beam64 is then reflected by beam splitter 48 to provide a first beam 66. Asecond beam 68 passes through the beam splitter 48, as shown. Moveableaiming mirrors 54 and 60 reflect beams 66 and 68 to provide sources P₁and P₂, respectively.

Referring to FIG. 2 b, in another embodiment the sources of radiation P₁and P₂ are split from the radiation emitted from a tunable laser 40using a fiber optic splitter 56. Fibers may have beam-forming elementsat their end to control or set the divergence angle of the two beams,and in one embodiment the beam-forming elements may be lenses. SourcesP₁ and P₂ may alternatively be formed from a pair of tunable laserswhich are frequency locked together. Other suitable embodiments ofradiation sources include any sources which generate a wave having acontrollable phase, such as microwaves and sonic waves.

In one embodiment, the sources of radiation P₁ and P₂ are maintained ata fixed distance D from one another by attaching each source to one endof a bar comprised of a material having a small coefficient ofexpansion. In another embodiment, the sources of radiation P₁ and P₂ arenot held at a fixed distance but instead the distance between them, D,is known to a high degree of accuracy.

One illustrative bar 70 for supporting radiation sources P₁ and P₂ at afixed distance D relative to one another is shown in FIG. 3. A bar 70 isprovided with sockets 74 at opposite ends thereof. A ball joint 76 ispivotally positioned within each of the sockets 74, as shown. Each ofthe ball joints 76 has an end of a fiber from a fiber optic splitter 56(shown in FIG. 2 b) positioned therein and an aperture 80 through whichdivergent radiation passes. Fibers may have beam-forming elements attheir end to control or set the divergence angle of the two beams and inone embodiment the beam forming elements are lenses. In operation, theball joints 76 are pivotable as shown by arrows 78 within the respectivesocket 74 and may be under the control of control unit 32 (shown in FIG.1). With this arrangement, the divergent beams 12 and 14 provided by thesources P₁ and P₂ at the ends of the fibers can be directed as desiredto illuminate all, or a portion, of the object 10 including the point P₀to be processed, while maintaining a fixed separation distance D.

Referring again to FIG. 1, the coordinates of point P₀ on the surface ofobject 10 are (x,y,z). Although the x and y coordinates of P₀ aregenerally directly determinable from the geometry of the detector 22 andthe object 10, taking into account any magnification by interveningfocusing element 24, the depth coordinate z, where the z axis is definedas being parallel to the optical axis of the imaging system, is notdirectly obtainable. The depth coordinate, z, however can be measured byfirst considering the difference in path lengths=R ₂ −R ₁ +S ₀  (1)from the radiation sources P₁ and P₂ to the point P₀ on the surface ofthe object 10. The quantity S₀ is included to account for any pathlength difference in the beams that may occur before they reach pointsP₁ and P₂.

If s is non-zero, then changing the frequency of the radiation emittedfrom sources P₁ and P₂ will result in the phase of the radiation fromone source, as measured at point P₀, changing with respect to the othersource. This phase change results in a modulation of intensity of theradiation at point P₀. The change in frequency, Δν, required to completeone cycle of a change in intensity is given by the expression:$\begin{matrix}{{\Delta\quad v} = \frac{c}{s}} & (2)\end{matrix}$where c is the speed of light. Thus, by measuring the change in laserfrequency, Δν, needed to cause one oscillation of intensity, the pathdifference s may be determined. The measurement of z is then based ondetermining the value of s for each value of x and y, as discussedbelow.

Improved accuracy in the determination of s is obtained by measuring Δνover many oscillation cycles. In practice it is convenient to work interms of the number of oscillation cycles N (not necessarily a wholenumber) induced by a total change in frequency B.

N is given in terms of Δν and B as: $\begin{matrix}{N = \frac{B}{\Delta\quad v}} & (3)\end{matrix}$Elimination of Δν from Eq. (3) using Eq. (2) yields the followingexpression for s in terms of N: $\begin{matrix}{s = {\frac{c}{B}N}} & (4)\end{matrix}$

It should be noted that the number of oscillation cycles N induced by afrequency scan of length B corresponds to the number of interferencefringes that move across the measurement point P₀ during the frequencyscan. The interference fringes are produced by the interference ofradiation emitted from the sources P₁ and P₂. These oscillations occurwhether or not the fringes are resolved by the imaging lens 24.

An uncertainty ΔN in the measurement of N, corresponds to an uncertaintyΔs in s of $\begin{matrix}{{\Delta\quad s} = {{\frac{c}{B}\Delta\quad N} = {s\frac{\Delta\quad N}{N}}}} & (5)\end{matrix}$

Equation (5) indicates that if the uncertainty ΔN to which a singleoscillation cycle can be determined remains constant, the uncertainty Δsin s is reduced by a factor equal to the number of cycles N that aremeasured. There are numerous methods for determining N to various levelsof resolution ΔN that are known to those skilled in the art. Examples ofmethods yielding a resolution of roughly one oscillation-cycle count(ΔN=1) are to perform a fast Fourier transform (FFT) on the datasequence or to count zero crossings of the high-pass filtered signal.Improved resolution of a fraction of an oscillation-cycle count (ΔN<1)can be achieved, for example, by finding the argument of the discreteFourier transform (DFT) where the magnitude of the DFT is maximized orby inspecting the phase of the oscillation cycle at the ends of thefrequency scan. One technique known to those skilled in the art foraccurate inspection of the phase is to insert a phase modulator in oneleg of the beam path, i.e., between the beam splitter or fiber-opticsplitter and one of the sources P₁ or P₂ in FIGS. 2, 2(a), and 2(b).

If I₁, I₂, and I₃ are signal intensities corresponding to phase shiftsinduced by the phase modulator of −90°, 0°, and 90°, respectively, thenthe phase φ of the oscillation cycle is given by: $\begin{matrix}{\phi = {\tan^{- 1}\left( \frac{I_{1} - I_{3}}{{2I_{2}} - I_{1} - I_{3}} \right)}} & (6)\end{matrix}$An uncertainty Δø in phase is converted to an uncertainty ΔN in thecycle count by dividing by 2π.

For a typical frequency scan of B=15 THz for a tunable diode laser, andfor an uncertainty of ΔN=1 cycle, an uncertainty of Δs=20 μm isprovided. An uncertainty of ΔN=0.1 cycle would improve the uncertaintyin s to Δs=2.0 μm, provided that the spread in s over the lateralresolution is smaller than this quantity. If the spread in s over thelateral resolution on the surface of the object is larger than Δs, thenthe improved resolution in the measurement of s may still result in animproved estimate of an average or representative value of s over thatlateral resolution.

In terms of the coordinate system: $\begin{matrix}{s = {\sqrt{\left( {x - x_{2}} \right)^{2} + \left( {y - y_{2}} \right)^{2} + \left( {z - z_{2}} \right)^{2}} - \sqrt{\left( {x - x_{1}} \right)^{2} + \left( {y - y_{1}} \right)^{2} + \left( {z - z_{1}} \right)^{2}}}} & (7)\end{matrix}$To make the calculation simpler, assume that the two sources P₁ and P₂are located symmetrically about the origin at (x₁,y₁,z₁) and(−x₁,−y₁,−z₁). Then Eq. (7) becomes, in terms of (x₁,y₁,z₁):$\begin{matrix}{s = {\sqrt{\left( {x + x_{1}} \right)^{2} + \left( {y + y_{1}} \right)^{2} + \left( {z + z_{1}} \right)^{2}} - \sqrt{\left( {x - x_{1}} \right)^{2} + \left( {y - y_{1}} \right)^{2} + \left( {z - z_{1}} \right)^{2}}}} & (8)\end{matrix}$Solving for z, Eq. (8) becomes: $\begin{matrix}{z = \frac{{4\left( {{x\quad x_{1}} + {y\quad y_{1}}} \right)z_{1}} \pm {\frac{s}{2}\quad\sqrt{{16\left( {{x\quad x_{1}} + {y\quad y_{1}}} \right)^{2}} + {\left( {s^{2} - {4z_{1}^{2}}} \right)\left( {s^{2} - D^{2} - {4x^{2}} - {4y^{2}}} \right)}}}}{s^{2} - {4z_{1}^{2}}}} & (9)\end{matrix}$where D is the distance between the two sources P₁ and P₂. Thus z isdetermined to within an ambiguity due to the existence of the positiveand negative roots of Eq. (9). One way to avoid this ambiguity is byilluminating the object 10 so that the s=0 line (labeled 16 in FIG. 1for the case s₀=0) does not bisect the region of the object to beimaged. One way of moving the s=0 line is to vary s₀ in Eq. (1).

The sensitivity of the system to changes in s is shown by the ratio ofΔs/Δz, where Δz is the uncertainty in z introduced by an uncertainty Δsin the value of s. This ratio ranges between zero, for a system lackingany practical range sensitivity and two, for a theoretically maximalsystem. A value of two is impractical to achieve because the surface ofthe object 10 would have to lie between the two point sources P₁ and P₂and only one side of the surface could be illuminated from each beam.The ratio Δs/Δz is calculated by taking the partial derivative of s withrespect to z, from which the following expression for the rangeresolution is obtained: $\begin{matrix}{{\Delta\quad z} = {\Delta\quad{s\left( {\frac{z + z_{1}}{\sqrt{R_{0}^{2} + {R_{0}D\quad\cos\quad\psi} + \frac{D^{2}}{4}}} - \frac{z - z_{1}}{\sqrt{R_{0}^{2} - {R_{0}D\quad\cos\quad\psi} + \frac{D^{2}}{4}}}} \right)}^{- 1}}} & (10)\end{matrix}$In equation (10), R₀ is the distance from the origin to P₀ and ψ is theangle between the line extending from the origin to the point P₀ and theline extending from point P₁ to point P₂ as shown in FIG. 1. A usefulconfiguration that provides good range resolution is to set ψ=90° forwhich the expression for Δz simplifies to $\begin{matrix}{{\Delta\quad z} = \frac{\Delta\quad s}{2\quad\sin\quad\alpha\quad\cos\quad\theta_{s}}} & (11)\end{matrix}$where θs and α are as shown in FIG. 1. In terms of R₀ and D,tanα=D/(2R₀). Equation (11) shows that the range resolution improves asthe angle α increases and the angle θ_(s) decreases. For values of Δs=5μm, α=10°, and θ_(s)=45°, the range resolution is Δz=20 μm.

Uncertainties (Δx, Δy) in the lateral position (x, y) of point P₀ alsoaffect the range resolution Δz. If the two source points lie in the x-zplane, then the measurement of z is insensitive to uncertainties Δy. Forψ=90°, uncertainties Δx in x cause an uncertaintyΔz=Δx tan θ_(s)  (12)in the measurement of z. Therefore, angles near θ_(s)=0° offer the bestimmunity to uncertainty in the lateral position of point P₀.

Because the depth of focus decreases as the lateral resolution of theoptical system improves, there is a tradeoff between lateral resolutionand maximum object depth. One method for reducing this limitation inobject depth is to sequentially focus on different range planes and useonly those pixels that are within the depth of focus. For example, a 100μm lateral resolution would limit the depth of field to the order of 1cm, and an object with a 10 cm range could be imaged at full resolutionby focusing sequentially at ten different ranges. To minimize theeffects of depth of field, the z axis can be defined in a direction thatminimizes the range extent, i.e., normal to the average plane of thesurface of the object. To increase the lateral area that can be imagedwithout losing lateral resolution, multiple cameras (i.e., detectorarrays 22) can be used to cover the entire area of interest of theobject 10 or individual cameras can be used for inspecting regions ofinterest. Alternatively, the focal plane of single lenses can bepopulated with a plurality of detector arrays. These arrays can betranslated independently to inspect various regions of the object athigh resolution. Translation of individual detector arrays along the zaxis or tilting of the detector arrays can achieve simultaneous focusingfor regions of the object at different depths to increase the allowableobject depth.

A potential difficulty with the optical imaging system in FIG. 1 is thatthe bistatic angle between the sources and the detector may introduceshadowing effects. These effects can be reduced by placing the lenscloser to the sources as in FIG. 4 and using the lens in an off-axisconfiguration where the detector is offset laterally in the image plane.If the lens is designed for this purpose or has a sufficiently largefield of view, then aberrations resulting from off-axis imaging can beminimized.

Referring to FIG. 5, an alternate embodiment of the present inventionincludes a moveable radiation source P₁ and a stationary radiationsource P₂, each providing a divergent beam 150 and 154 and having a pathlength labeled R₁ and R₂ between such radiation source and a point P₀ onthe surface of an object 10, respectively. The sources P₁ and P₂ may begenerated by any suitable source of coherent radiation, such as amonochromatic laser, which is split to provide the two point sources P₁and P₂. Moreover, various techniques are suitable for splitting theradiation from the coherent radiation source, such as the beam splitterembodiments of FIGS. 2 and 2 a and the fiber-optic splitter embodimentof FIG. 2 b.

The divergent beams 150 and 154 are directed toward a surface of anobject 10 on which a point P₀ is located having position informationwhich is to be measured. Illumination scattered by the surface of theobject 10 is focused by a focusing element, or lens 158 to impinge on adetector array 22. The lens can be used in an off-axis configuration asillustrated in FIG. 4 to reduce shadowing effects due to the bistaticangle. An optional polarizer (not shown) of the type described above inconjunction with FIG. 1 may be positioned between the focusing element158 and the detector array 22 in order to improve the contrast of thespeckle image or the fringe pattern incident on the detector array 22.

The detector array 22 is in communication with a processor unit 28 forprocessing the image incident on the detector, as will be described. Acontrol unit 32 is in communication with at least the moveable source P₁for moving the source P₁ along an axis 160. As noted above, the controlunit 32 and the processor unit 28 may be implemented by separate devicesor alternatively, may be part of a single system. Additionally, thecontrol unit 32 and the processor unit 28 may communicate with eachother, as may be desirable in certain applications.

As described above in conjunction with FIG. 1, the depth coordinate zassociated with a point P₀ on the surface of the object 10 can bedetermined as a function of the difference, R₂−R₁, between the pathlengths R₁ and R₂ of beams 150 and 154, from sources P₁ and P₂respectively, to point P_(o). In the embodiment of FIG. 5, the phase ofthe radiation from moveable source P₁ is changed by moving the source P₁along the axis 160 under the control of the control unit 32. With thisarrangement, oscillations in the intensity at point P₀ are produced.

The instantaneous coordinates of moveable point source P₁ arex₁=al_(s), y₁=am_(s), and z ₁=an_(s)  (13)where a represents the magnitude of translation of point source P₁, andl_(s), m_(s), and n_(s) are direction cosines representing the directionof translation with respect to the x, y and z axes, respectively. Thephase difference of the radiation from the sources P₁ and P₂ as measuredafter propagation to point P₀ is given by: $\begin{matrix}{\phi = {{\frac{2\pi}{\lambda}\left( {R_{2} - R_{1}} \right)} + \phi_{0}}} & (14)\end{matrix}$where φ₀ represents a constant phase offset that may exist between thetwo coherent sources P₁ and P₂. As P₁ translates along axis 160, thevalue of R₁ changes, causing φ to vary as a function of a.

The number of intensity oscillations that occur at point P₀ (orinterference fringes that cross point P_(o)) as source P₁ moves awayfrom the origin is given by: $\begin{matrix}\begin{matrix}{N = \frac{{\phi(a)} - {\phi(0)}}{2\quad\pi}} \\{= \frac{R_{0} - R_{1}}{\lambda}} \\{= {\frac{1}{\lambda}\left\lbrack {\sqrt{x^{2} + y^{2} + z^{2}} - \sqrt{\left( {x - {a\quad l_{s}}} \right)^{2} + \left( {y - {a\quad m_{s}}} \right)^{2} + \left( {z - {a\quad n_{s}}} \right)^{2}}} \right\rbrack}}\end{matrix} & (15)\end{matrix}$where R_(o) is the distance between point P₀ and the origin of thecoordinate system, φ(a) is the optical phase difference in Eq. (14) fora source separation of a, and φ(0) is the optical phase difference inEq. (14) for a equal to 0. Consideration of Eq. (15) reveals that thenumber of intensity oscillations, N, resulting from movement from sourceP₁ is independent of the location of the stationary source P₂. Thisindependence permits the sources P₁ and P₂ to be positioned in closeproximity to one another. With this arrangement, the divergent beams 150and 154 from respective sources P₁ and P₂ experience commondisturbances, such as air turbulence and vibrations. In this way, theeffects of such disturbances are minimized. Additionally, beams 150 and154 reach the surface of the object 10 with substantially identicalpolarization.

Note also that a small separation between the sources P₁ and P₂ producesa fringe pattern on the surface of the object 10 with a large fringespacing that can be easily resolved by the imaging lens 24.

Since the magnitude of translation a of point source P₁ is relativelysmall as compared to the value of R₀, Eq. (15) can be approximated tosecond order in a/R₀ as follows: $\begin{matrix}{N = {\frac{a}{\lambda}\left\lbrack {{\cos\quad\psi} - {\frac{1}{2}\sin^{2}\psi\frac{a}{R_{0}}} - {\frac{1}{2}\cos\quad\psi\quad\sin^{2}\psi\frac{a^{2}}{R_{0}^{2}}}} \right\rbrack}} & (16)\end{matrix}$where ψ is the angle between the line extending from the origin to thepoint P₀ and the line defined by the direction of translation of P₁.

Eq. (16) indicates that to lowest order in a/R₀, knowledge of N allowsthe angle ψ to be determined. Given knowledge of ψ from three or morelocations, the (x,y,z) coordinates of P₀ could be determined throughtriangulation. We now describe an embodiment similar to the onecorresponding to FIG. 1, where the x and y coordinates are determinedfrom location of the image point in the detector array.

The measurement of z for a given (x,y) location can be made either bydetermining the number of intensity oscillation cycles N correspondingto a movement of P₁ by a distance or by measuring the rate at which suchintensity oscillations occur. Consider first a measurement of z based ondetermining the number of cycles N. With N known, all of the variablesin Eq. (15) are known except for z. Solving Eq. (15) for z yields thefollowing expression: $\begin{matrix}{z = \frac{{A\quad n_{s}} \pm {\overset{\_}{\rho}\sqrt{A^{2} - {\left( {{\overset{\_}{\rho}}^{2} - n_{s}^{2}} \right)\left( {x^{2} + y^{2}} \right)}}}}{{\overset{\_}{\rho}}^{2} - n_{s}^{2}}} & (17) \\{{where}{A = {{x\quad l_{s}} + {y\quad m_{s}} + {\frac{a}{2}\left( {{\overset{\_}{\rho}}^{2} - 1} \right)}}}} & (18) \\{{and}{\overset{\_}{\rho} = \frac{\lambda\quad N}{a}}} & (19)\end{matrix}$Equation (19) defines a dimensionless parameter having a magnituderanging between zero and unity that represents the average modulationrate of the speckle intensity in terms of oscillation cycles N perwavelength unit traveled by P₁. For values of a approaching zero, Eq.(17) can be approximated as: $\begin{matrix}{z = \frac{{\left( {{x\quad l_{s}} + {y\quad m_{s}}} \right)n_{s}} \pm {\overset{\_}{\rho}\sqrt{\left( {{x\quad l_{s}} + {y\quad m_{s}}} \right)^{2} - {\left( {{\overset{\_}{\rho}}^{2} - n_{s}^{2}} \right)\left( {x^{2} + y^{2}} \right)}}}}{{\overset{\_}{\rho}}^{2} - n_{s}^{2}}} & (20)\end{matrix}$

The expressions for z in Eqs. 17 and 20 can be simplified by settingn_(s)=0, so that the translation of source P₁ is confined to the x-yplane. This arrangement represents a good practical choice fortranslation of source P₁, as described below. The resulting expressionfor z can be written as follows:z=√{square root over (R ⁰ ² −x ² −y ² )}  (21)where the distance R_(o) from the scattering point P₀ to the origin ofthe x, y coordinate system is given by the exact expression:$\begin{matrix}{R_{0} = \frac{{x\quad l_{s}} + {y\quad m_{s}} + {\frac{a}{2}\left( {{\overset{\_}{\rho}}^{2} - 1} \right)}}{\overset{\_}{\rho}}} & (22)\end{matrix}$When a is small, R₀ can be approximated as: $\begin{matrix}{R_{0} = \frac{{x\quad l_{s}} + {y\quad m_{s}}}{\overset{\_}{\rho}}} & (23)\end{matrix}$

Consider now the measurement of z based on knowledge of theinstantaneous rate at which the intensity oscillations occur. Theinstantaneous oscillation rate ρ can be expressed in a manner similar tothe average oscillation rate in Eq. (19), as follows: $\begin{matrix}{\rho = {\lambda\frac{\partial N}{\partial a}}} & (24)\end{matrix}$Substituting the expression for the number of intensity oscillations, N,from Eq. (15) into Eq. (24) yields: $\begin{matrix}{\rho = \frac{{x\quad l_{s}} + {y\quad m_{s}} + {z\quad n_{s}} - a}{\sqrt{\left( {x - {a\quad l_{s}}} \right)^{2} + \left( {y - {a\quad m_{s}}} \right)^{2} + \left( {z - {a\quad n_{s}}} \right)^{2}}}} & (25)\end{matrix}$where the relation:l _(s) ² +m _(s) ² =n _(s) ²=1  (26)has been used to simplify the numerator. For small values of a, ρ can beapproximated as: $\begin{matrix}{\rho \approx {{\cos\quad\psi} - {\sin^{2}\psi\frac{a}{R_{0}}} - {\frac{3}{2}\cos\quad\psi\quad\sin^{2}\psi\frac{a^{2}}{R_{0}^{2}}}}} & (27)\end{matrix}$Solving, Eq. (25) for z yields: $\begin{matrix}{z = \frac{O \pm Q}{\rho^{2} - n_{s}^{2}}} & (28)\end{matrix}$whereO=[xl _(s) +ym _(s) +a(ρ²−1)]n _(s)  (29)and $\begin{matrix}{Q = {\rho\sqrt{{{a\left( {\rho^{2} - 1} \right)}\left\lbrack {{2\left( {{x\quad l_{s}} + {y\quad m_{s}}} \right)} - {a\left( {l_{s}^{2} + m_{s}^{2}} \right)}} \right\rbrack} + \left( {{x\quad l_{s}} + {y\quad m_{s}}} \right)^{2} - {\left( {\rho^{2} - n_{s}^{2}} \right)\quad\left( {x^{2} + y^{2}} \right)}}}} & (30)\end{matrix}$When n_(s)=0, Eq. (29) can be written in the form of Eq. (21), with:$\begin{matrix}{R_{0} = \frac{\sqrt{{{a\left( {\rho^{2} - 1} \right)}\left\lbrack {{2\left( {{x\quad l_{s}} + {y\quad m_{s}}} \right)} - a} \right\rbrack} + \left( {{x\quad l_{s}} + {y\quad m_{s}}} \right)^{2}}}{\rho }} & (31)\end{matrix}$For small values of a, Eqs. (28) and (31) can be approximated by Eqs.(20) and (23), respectively, with {overscore (ρ)} replaced by ρ.

In order to estimate range resolution, consider the uncertainty Δz inthe measurement of z that would be introduced by an uncertainty (ΔN orΔρ) in the quantity being measured. For simplicity, this calculation isbased on the approximate expression for N given by Eq. (16). To find Δz,we take the partial derivative of N (or ρ) with respect to z and equatethis derivative to the ratio ΔN/Δz (or Δρ/Δz), to yield: $\begin{matrix}{{\Delta\quad z} = {{G\frac{R_{0}}{a}\lambda\quad\Delta\quad N} = {G\quad R_{0}\Delta\quad\rho}}} & (32) \\{where} & \quad \\\begin{matrix}{G = \frac{1}{n_{s} - {\left( {{l\quad l_{s}} + {m\quad m_{s}} + {n\quad n_{s}}} \right)n}}} \\{= \frac{1}{\sin\quad{\theta\left\lbrack {{\cos\quad\theta_{s}\sin\quad\theta} - {\cos\quad\theta\quad\sin\quad\theta_{s}{\cos\left( {\phi - \phi_{s}} \right)}}} \right\rbrack}}}\end{matrix} & (33)\end{matrix}$is a geometrical factor that accounts for the direction of translationand the direction to the scattering point. In the first form for G,l=x/R ₀ , m=y/R ₀, and n=z/R ₀  (34)are direction cosines for the Point P₀. In the second form for G, θ andφ are the polar and azimuthal angles, respectively, representing thedirection from the origin to P₀ in a spherical-polar coordinate system.Likewise, the direction of translation of the source point is given byθ_(s) and φ_(s).

Consideration of Eq. (32) reveals that range resolution degrades withincreasing object distance R₀ and improves with increasing magnitude oftranslation a of source P₁. Consideration of Eq. (33) reveals that thegeometrical factor G ranges between unity and infinity, where unitycorresponds to the best range resolution achievable.

The optimal direction of translation of source P₁ for a givenscattering-point direction is obtained from Eq. (33) by choosing l_(s),m_(s), and n_(s) such that G is minimized for the given values of l, mand n. Application of this constraint yields: $\begin{matrix}{\left( {l_{s},m_{s},n_{s}} \right) = \left( {{- \frac{n\quad l}{\sqrt{1 - n^{2}}}},{- \frac{n\quad m}{\sqrt{1 - n^{2}}}},\sqrt{1 - n^{2}}} \right)} & (35)\end{matrix}$which implies that the optimal translation direction is orthogonal tothe line extending from the origin to the scattering point P₀ (ψ=90°)and lies in the plane of incidence formed by said line and the z axis(φ_(s)=φ). Substitution of the values in Eq. (35) into Eq. (33) resultsin: $\begin{matrix}{G = {\frac{1}{\sqrt{1 - n^{2}}} = {\frac{1}{\sqrt{l^{2} + m^{2}}} = \frac{1}{\sin\quad\theta}}}} & (36)\end{matrix}$From Eq. (36), it is observed that the best achievable G value of unityoccurs when n=0 (θ=90°), which implies that the scattering point lies inthe x-y plane. It is also observed that the resolution degrades suchthat G approaches infinity for scattering points lying on the z axis.For example, G=2 for θ=30° and G=5.76 for θ=10°. Although it is notpossible to satisfy Eq. (35) for every point in the image withoutchanging the translation direction for each point, the condition foroptimal resolution can be approximated by satisfying Eq. (35) for arepresentative image point.

By Eqs. (25) and (27), the instantaneous modulation rate ρ depends onthe offset magnitude a of the translating point. For techniques based onmeasuring ρ, it is desirable for ρ to vary as little as possible duringthe scan so that there is nearly a one-to-one correspondence betweenvalues of ρ and z. Then standard spectral-analysis techniques can beapplied to estimate the value of ρ and determine z. To quantify thedegree of nonuniformity in ρ that occurs during a scan, we define:$\begin{matrix}{\chi = {\frac{{\rho(a)} - {\rho(0)}}{\rho(0)} = \frac{{\rho(a)} - {\cos\quad\psi}}{\cos\quad\psi}}} & (37)\end{matrix}$Substitution of the approximate form for ρ from Eq. (27) into Eq. (37)and keeping only the lowest order term containing a, yields:$\begin{matrix}{\chi \approx {\frac{\sin^{2}\psi}{\cos\quad\psi}\frac{a}{R_{o}}}} & (38)\end{matrix}$Equation (38) states that the modulation nonuniformity increaseslinearly in the ratio a/R₀ of scan length to object distance.Furthermore, the nonuniformity vanishes when ψ=0° and increases withoutbound when ψ=90°. We observe, however, that there is no range resolutionwhen ψ=0° because all points on the ψ=0° line have the same modulationrate, regardless of range, i.e., G=∞ in Eq. (33). Therefore, there is atradeoff between minimizing the nonuniformity and obtaining optimalrange resolution.

A reasonable measurement configuration that simultaneously provides goodrange resolution and reduced modulation nonuniformity is to set n_(s)=0and to use an off-axis optical system with the offset in the φ_(s)direction, i.e., φ=φ_(s). Then Eq. (33) for G reduces to:$\begin{matrix}{G = \frac{- 2}{\sin\left( {2\quad\theta} \right)}} & (39)\end{matrix}$

As an illustrative example of the measurement technique, suppose it isdesired to image an object that is 200 mm by 200 mm in the x-y planefrom a distance of R₀=1 m using a laser of wavelength λ=0.7 μm. Ifn_(s)=0 and the center of the object is located at θ=30° and φ=φ_(s),then, by Eq. (39), the geometric factor G will vary between 2.1 and 2.6over the field of view. By Eq. (32), a translation of a=5 mm willproduce a range uncertainty of Δz=16 μm (in the middle of the image) foran uncertainty in the number of oscillations of one-twentieth of acount, i.e., ΔN=0.05. The total number of oscillation counts for theentire scan is N=3600 by Eq. (16). To estimate the modulationnonuniformity at the center of the image, we set ψ=60° in Eq. (38) andobtain χ=0.0075 so that there is less than a 1% nonuniformity over thescan. This nonuniformity could be reduced further by introducing slightvariations in the scan rate during the scan to compensate for any changein frequency during the measurement.

FIG. 6 depicts an illustrative series of steps to be executed by theprocessor 28 of FIGS. 1 and 5 to determine the depth coordinate z ateach point (x, y) on the object. The processor begins (step 100) bymeasuring a parameter of the intensity of the radiation scattered by aplurality of illuminated points on the object surface (step 108). Fromthis information, the z coordinate for each measured point is calculated(step 112).

An optional filtering process may be performed in step 116. Suitablefilters known to those skilled in the art include, but are not limitedto, smoothing filters, median filters and curve-fitting filters.Thereafter, the mapped points can be displayed or output in anyway knownto one of ordinary skill in the art, following which the process isterminated in step 124, as shown. In one embodiment, the mapped pointsare plotted as a function of the computed z information on a mesh plotin step 120.

Referring also to FIG. 6 a, one embodiment of steps 108 and 112,suitable for use with the embodiment of FIG. 1 is shown. In step 108′,the intensity of the scattered illumination is measured as a function oflaser frequency offset and N is measured using one of the methods knownto those skilled in the art. Thereafter, s is calculated for eachlocation (x,y) in step 110′ using Eq. (4) and z is calculated for eachlocation (x,y) in step 112′ using Eq. (9).

An alternate embodiment of process steps 108 and 112 for use inconjunction with the embodiment of FIG. 5 is shown in FIG. 6 b. In thiscase, the parameter of the intensity measured in step 108″ is the numberof times, N (not necessarily a whole number), that the intensity cyclesas the moveable source P₁ (FIG. 5) translates. Once N has beendetermined in step 108″ through one of the methods known to be skilledin the art it is converted to {overscore (ρ)} by Eq. (19) in step 110″.z is then calculated in step 112″ with the use Eqs. (17) and (18).Another embodiment of process steps 108 and 112 for use in conjunctionwith the embodiment of FIG. 5 is shown in FIG. 6C. Here, the parameterof the intensity measured in step 108″ is the instantaneous oscillationrate ρ at which oscillations occur as the source point P₁ translates. ρis converted to z in step 112′″ through Eqs. (28)-(30).

Various arrangements of detector 22 and processor 28 are possible. Inone embodiment, shown in FIG. 7, the photodetector elements 22 _(1,1) to22 _(n,m) of the detector array 22 are read out serially. The serialoutput 36 of detector array 22 provides an input to a processor 28.Processor 28 may comprise a single processor or alternatively, may be amultiprocessor comprising a plurality of processors.

Referring also to FIG. 7 a, an alternate detector and processorarrangement is shown. In this embodiment, the processor 28 is amultiprocessor comprising a plurality of processors 28 _(1,1) to 28_(n,m). Each of the photodetector elements 22 _(1,1) to 22 _(n,m) of thedetector array 22 provides a respective output signal 38 to acorresponding one of the processors 28 _(1,1) to 28 _(n,m). With thisarrangement, each of the processors 28 _(1,1) to 28 _(n,m) is able tooperate substantially simultaneously, in order to provide substantialperformance advantages. More particularly, each processor 28 _(1,1) to28 _(n,m) in the multiprocessor unit 28 is responsible for making the zcoordinate calculation based upon the data received from thecorresponding element 22 _(1,1) to 22 _(n,m) of the photodetector array22. Thus, the z coordinate for each location of the surface of theobject 10 may be determined rapidly.

FIG. 7 b shows a further alternate embodiment of the detector andprocessor components for use in the systems of FIGS. 1 and 5 in the formof a unitary detector and processor array 25. The array 25 is fabricatedon, and supported by, a common substrate or is fabricated as aMulti-Chip Module (MCM) or with Surface Mount Technology (SMT). Thedetector portion of the array 25 includes photodetector elements 22_(1,1) to 22 _(n,m) and the multiprocessor portion of the array includesprocessors 28 _(1,1) to 28 _(n,m). More particularly, each of thedetectors 22 _(1,1) to 22 _(n,m) is associated with, and positionedadjacent to, a respective one of the processors 28 _(1,1) to 28 _(n,m)and provides an input signal to the respective processor, as shown. Theprocessors 28 _(1,1) to 28 _(n,m) process the information from therespective detectors 22 _(1,1) to 22 _(n,m) substantially simultaneouslyto provide the determined depth coordinates.

Referring to FIG. 8, another embodiment of the invention includes anarray of detectors 22′ placed against the surface of the object 10 whosesurface contour is to be measured. With this arrangement, rather thanobserving the light scattered from the point P₀ on the surface of theobject 10 to determine z, the measurement of the phase shifting of thelight is performed directly at the surface of the object. Although notshown, the system of FIG. 8 includes a control unit 28 for controllingsources P₁ and P₂ and a processor 28 for processing radiation incidenton detector 22′ as shown and described above in conjunction with FIGS.1, 5 and 6.

The arrangement and mechanism for locating the photodetector elements 23on the surface of the object 10 may vary. In one embodiment shown inFIG. 9, a plurality of individual photodetector elements 23 of array 22′are positioned on the surface of the object 10 in the area of interest.

In another embodiment, shown in FIG. 9 a, individual photodetectorelements 23 of the array 22′ are mounted on spring arms 84 cantileveredfrom a support and control unit 88. The spring arms 84 are moved overthe surface of the object 10 by the control unit 88 in order to contactspecific points, or regions of interest. The cantilevered support ofspring arms 84 causes each individual detector 23 to remain in contactwith a location on the surface of the object 10 as the arms 84 are movedthereover. That is, as the contour of the object surface varies, thespring arms 84 move up and down accordingly.

It will be appreciated that two or more additional radiation sources maybe used in apparatus and methods of the present invention. For example,an additional source or sources can be used to determine x,y coordinateinformation regarding the object or a portion thereof. Additionally,extra radiation sources may be used to reduce any processinginaccuracies or ambiguities attributable to shadowing of a region ofinterest.

It will also be appreciated that other variations to the embodimentinvolving moving source points may be used. For example, the two pointsmay both move with opposing motion, they may both move in the samedirection with constant separation, they may rotate about a commoncenter point, or motion may be simulated by using an array of sourcepoints that can be switched on and off by the control system.

Movement of both sources can provide advantages over a single moveablesource such as reduction of the modulation nonuniformity in Eq. (38). Astrategy for reducing this nonuniformity is to eliminate the linear termin Eq. (27) for r by moving the points in such a way that N is an oddfunction of a. Splitting the translation equally between the two sourcesso that their center remains fixed (referred to as opposing motion)results in the following expression: $\begin{matrix}{N = {\frac{R_{2} - R_{1}}{\lambda} = {\frac{1}{\lambda}\left\lbrack {\sqrt{\left( {x + {\frac{a}{2}l_{s}}} \right)^{2} + \left( {y + {\frac{a}{2}m_{s}}} \right)^{2} + \left( {z + {\frac{a}{2}n_{s}}} \right)^{2}} - \sqrt{\left( {x - {\frac{a}{2}l_{s}}} \right)^{2} + \left( {y - {\frac{a}{2}m_{s}}} \right)^{2} + \left( {z - {\frac{a}{2}n_{s}}} \right)^{2}}} \right\rbrack}}} & (40)\end{matrix}$The expansion of N corresponding to Eq. (16) that contains terms up tofourth order in a is: $\begin{matrix}{N \approx {\frac{a}{\lambda}\left\lbrack {{\cos\quad\Psi} - {\frac{1}{8}\quad\cos\quad{\Psi sin}^{2}\Psi\frac{a^{2}}{R_{0}^{2}}}} \right\rbrack}} & (41)\end{matrix}$Thus, the second-order term in a and all higher-order even terms in aare eliminated and the magnitude of the third-order term is decreased bya factor of four.

An exact expression for z based on Eq. (17) and Eq. (22) is thus givenby: $\begin{matrix}{z = \frac{{\left( {{x\quad l_{s}} + {y\quad m_{s}}} \right)n_{s}} \pm {\overset{\_}{\rho}\sqrt{\left( {{x\quad l_{s}} + {y\quad m_{s}}} \right)^{2} - {\left( {{\overset{\_}{\rho}}^{2} - n_{s}^{2}} \right)\left\lbrack {x^{2} + y^{2} + {\left( {a^{2}/4} \right)\left( {{\overset{\_}{\rho}}^{2} - 1} \right)}} \right\rbrack}}}}{{\overset{\_}{\rho}}^{2} - n_{s}^{2}}} & (42)\end{matrix}$When n_(s)=0, Eq. (42) reduces to Eq. (21) with $\begin{matrix}{R_{0} = \sqrt{\left( \frac{{x\quad l_{s}} + {y\quad m_{s}}}{\overset{\_}{\rho}} \right)^{2} - {\frac{a^{2}}{4}\left( {{\overset{\_}{\rho}}^{2} - 1} \right)}}} & (43)\end{matrix}$For small values of a, Eqs. (42) and (43) reduce to Eqs. (20) and (23),respectively. Elimination of the first-order dependence on a by movingboth sources, however, makes this approximation more accurate than for asingle moving source.

For opposing motion of two sources, the expression for the modulationrate given in Eq. (25) becomes: $\begin{matrix}\begin{matrix}{\rho = {{\frac{1}{2}\frac{{x\quad l_{s}} + {y\quad m_{s}} + {z\quad n_{s}} - \frac{a}{2}}{\sqrt{\left( {x - {\frac{a}{2}l_{s}}} \right)^{2} + \left( {y - {\frac{a}{2}m_{s}}} \right)^{2} + \left( {z - {\frac{a}{2}n_{s}}} \right)^{2}}}} +}} \\{\frac{1}{2}\frac{{x\quad l_{s}} + {y\quad m_{s}} + {z\quad n_{s}} + \frac{a}{2}}{\sqrt{\left( {x + {\frac{a}{2}l_{s}}} \right)^{2} + \left( {y + {\frac{a}{2}m_{s}}} \right)^{2} + \left( {z + {\frac{a}{2}n_{s}}} \right)^{2}}}}\end{matrix} & (44)\end{matrix}$Using a small a approximation that is valid up to and including thirdorder of a, Eq. (44) becomes: $\begin{matrix}{\rho \approx {{\cos\quad\Psi} - {\frac{3}{8}\quad\cos\quad{\Psi sin}^{2}\Psi\frac{a^{2}}{R_{0}^{2}}}}} & (45)\end{matrix}$In comparison with Eq. (27), the absence of the linear term in Eq. (45)results in an average oscillation rate ρ that remains more constantduring a scan. The corresponding modulation nonuniformity χ previouslydefined in Eq. (37) can now be expressed as $\begin{matrix}{x \approx {{- \frac{3}{8}}\sin^{2}\Psi\frac{a^{2}}{R_{0}^{2}}}} & (46)\end{matrix}$Eq. (46) yields a much smaller value for χ than Eq. (38) because of thesecond-order dependence on the ratio a/R₀ and because of the absence ofcos ψ in the denominator. One of the advantages of moving both sourcepoints is that the nonuniformity remains small for the optimalrange-resolution situation where ψ=90°.

The results for range uncertainty Δz previously given for motion of asingle source are based on the first term in the small-a approximationsof N and ρ. Because the first terms in these approximations areidentical for motion of two sources, the previously described resultsare also valid for the motion of two sources.

Referring to FIG. 10, another embodiment of the present inventionincludes two oppositely moveable sources P₁ and P₂. A beam 44 from alaser source 40 is split into a transmitted beam 46 and a reflected beam50 by beam splitter 48. The transmitted beam 46 is reflected from amirror 94 to a lens 58. Similarly, the reflected beam 50 is reflectedfrom a mirror 96 to a lens 52. A right angle prism 92 with mirroredsurfaces 91 and 93 is used to redirect the beams 46 and 50 from thelenses 58 and 52, respectively. The beams 46 and 50 converge at pointsP₁ and P₂, respectively, and continue as divergent beams 82 and 86,respectively. Phase shifting can be accomplished by changing the opticalpath length difference between the beam paths followed by the separatedbeams 46 and 50. This can be achieved, for example, by inducingout-of-plane translations of at least one of the elements 48, 94, or 96with a piezoelectric transducer (not shown). Alternately, aphase-shifting device (not shown) may be inserted in one of the beampaths 46 or 50. An example of such a device is a rotating glass diskthat has been coated such that its optical thickness varies in discretesteps with rotation angle. Prism 92 is translatable along an axis 99 toaffect a symmetric motion of the sources P₁ and P₂. Alternatively, theprism 92 can remain fixed while the laser 40, beamsplitter 48, mirrors94 and 96 and lenses 52 and 58 are translated as one group along theaxis 99 in order to cause a symmetric translation of the sources P₁ andP₂. Changing the separation of the sources P₁ and P₂ can also beaccomplished using an angular modulation device (not shown) positionedin the beam 44 between the laser 40 and beam splitter 48 which causes achange in the beam angle. Examples of angular modulation devices aregalvanometer mirrors and acousto-optic modulators.

In another embodiment (not shown), the sources P₁ and P₂ are virtualsources. That is, the sources P₁ and P₂ are not small sources of lightor regions where the beams 46 and 50 pass through focus. Instead,diverging beams 82 and 86 are generated using optical components whichcause the beams 46 and 50 to diverge (i.e. negative lenses). Theresulting illumination at the object can be indistinguishable from otherembodiments using real sources P₁ and P₂.

FIG. 11 shows yet another configuration for generating oppositely movingsources P₁ and P₂. The beam 44 from a laser source 40 is split into atransmitted beam 46 and a reflected beam 50 by beam splitter cube 48.The transmitted beam 46 is reflected from a curved mirror 95 and from amirrored surface 91 of a right angle prism 92. Similarly, the reflectedbeam 50 is reflected from a curved mirror 97 and from a mirrored surface93 of the right angle prism 92. The beam splitter cube 48 can bemodified (e.g., removal of glass outside the beam path) to permit closemounting of optical components. The curved mirrors 95,97 perform thefunctions of the flat mirrors 94,96 and lenses 58,52 in FIG. 10. Thecurved mirrors 95,97 can be off-axis parabolic mirror segments whichyield small focal spots at P₁ and P₂. Alternatively, the curved mirrors95,97 can be spherical elements. Aberrations caused by sphericalelements will not affect the fringe contrast, but only the fringeposition. These aberrations can be incorporated into the analysis. Phaseshifting can be accomplished by translating beam splitter 48 or byplacing a phase-shifting device (not shown) in one of the beam paths 46or 50 as discussed previously.

Referring again for a moment to FIG. 1, the derivation in the priordescription is based on a telecentric imaging configuration. The lateralposition of the image point P_(i) in the focal plane is related to thelateral position of the object point P₀ by the magnification of the lens24 and is independent of the separation between the lens 24 and theobject 10. Defocusing blurs the image P_(i) but does not affect itsapparent lateral position at the detector 22. Consequently, the lateralposition of an object point P₀ can be estimated by the position of itsimage point P_(i), regardless of the distance. Unfortunately,telecentric imagers 24 may be impractical for large objects because thelens 24 must be at least as large in diameter as the largest dimensionof the measured object 10. Thus most lenses are not telecentric.

Referring now to FIG. 12, to avoid this problem, a more general approachfor determining the (x,y,z) coordinate of the point P₀ is to assume thatthe position of the image point P_(i) at the detector 22 is a measure ofthe angle α_(x) between the object point P₀ and the optical axis 98 ofthe focusing element 24. The coordinate can be derived from the fringenumber N and the location of the image point at the detector 22. Thefollowing equations are exact (do not assume small a). The lateralcoordinates are given by:x=x _(l)+(z−z _(l))tan α_(x)  (47)and y=y _(l)+(z−z _(l))tan α_(y)  (48)where α_(x) and α_(y) are the components of angle α as measured in thex-z and y-z planes, respectively.

The z coordinate is given by: $\begin{matrix}{z = {z_{m} + \frac{{{\overset{\_}{\rho}}^{2}B} - {{B_{s}C_{s}} \pm {\overset{\_}{\rho}\sqrt{{B_{s}^{2}C} - {2B\quad B_{s}C_{s}} + {A\quad C_{s}^{2}} + {{\overset{\_}{\rho}}^{2}\left\lbrack {B^{2} - {A\quad C} + {\frac{a^{2}}{4}\left( {{{\overset{\_}{\rho}}^{2}A} - B_{s}^{2}} \right)}} \right\rbrack}}}}}{B_{s}^{2} - {{\overset{\_}{\rho}}^{2}A}}}} & (49)\end{matrix}$whereA=1+tan² α_(x)+tan² α_(y)  (50)B=x _(p) tan α_(x) +y _(p) tan α_(y)  (51)$\begin{matrix}{C = {\frac{a^{2}}{4} + x_{p}^{2} + y_{p}^{2}}} & (52)\end{matrix}$  B _(s) =l _(s) tan α_(x) +m _(s) tan α_(y) +n _(s)  (53)C _(s) =l _(s) x _(p) +m _(s) y _(p)  (54)x _(p) =x _(l) −x _(m) −z _(l) tan α_(x)  (55)andy _(p) =y _(l) −y _(m) −z _(l) tan α_(y).  (56)The coordinate (x_(m), y_(m), z_(m)) represents the mid-position P_(m)between points P₁ and P₂ and allows for a generalized solution with(x_(m), y_(m), z_(m)) located at other than the origin of the coordinatesystem. For increased versatility, P_(m) and other parameters may varywith time.

The generalized determination of object coordinates described above canbe implemented in software on a computer which receives data from aprocessor unit in communication with a plurality of detectors 22 (e.g.,a CCD array). Alternatively, the algorithm can be implemented directlyin the processor unit 28.

The use of Eqs. (47)-(49) to determine the (x, y, z) coordinates of apoint P₀ requires knowledge of the angles α_(x) and α_(y) in addition tothe normalized fringe number {overscore (ρ)} as defined by Eq. (19). Inthe example above, these angles are determined by the location of theimage point P_(i) in the focal plane 22. In order to determine α_(x) andα_(y) accurately, it is necessary to correct for any image distortionthat may occur in the lens 24. Distortion can be corrected, for example,by creating a distortion function that maps angles α_(x) and α_(y) ontoimage points P_(i). The distortion map may vary for different lenses andmay even vary slightly for the same lens 24 in different imagingconfigurations.

In another embodiment of the present invention, the inconvenience ofcharacterizing lens distortion is avoided by using additional sourceheads to determine the remaining two direction components necessary fortriangulation. For example, as depicted in FIG. 12 a, an additionalsource head is placed at the position P₁ and the lens 24 which waspreviously at P₁ (see FIG. 12) is placed at any convenient position forviewing the region of interest on object 10. If the sources P_(1x) andP_(2x) in the second source head are oriented parallel to the x axis,then a measurement of the fringe number N_(x) at point P₀ for thissource head is equivalent to measuring the angle ψ_(x) between the linesdefined by points P_(1x) and P₁, and points P₁ and P₀ (see Eq. (41)).The angle α_(x) required for Eqs. (47)-(49) is then determined fromψ_(x) by the relationship α_(x)=π/2−ψ_(x). Likewise, (not shown in FIG.12 a) the angle α_(y) can be determined by using a source head atposition P₁ with sources P_(1y) and P_(2y) oriented parallel to the yaxis. The fringe number N_(y) for this orientation of a source headprovides a measurement of the angle α_(y) through α_(y)=π/2−ψ_(y). Thesource heads providing the angles α_(x) and α_(y) can, for example, bethe same source head rotated 90° about the z axis or different sourceheads made to appear at the same location through use of a beamsplitter.

When triangulating using multiple source heads, it is not necessary toknow the location of lens 24 and detector 22 (or the location componentsof detectors 23 placed on the object 10). The purpose of the imagingsystem 22 and 24 (or detectors 23) is to observe the illuminationintensity at P₀. Each pixel in the detector array 22 represents anobservation point P₀. Consequently, an (x, y, z) coordinate may bedetermined for each pixel. Various approaches may be used to separatethe measurements of N corresponding to different source heads. Forexample, the measurements may be time multiplexed by illuminatingsequentially with different source heads or wavelength multiplexed bysimultaneously illuminating with multiple source heads operating atdifferent wavelengths. Measurements can be further distinguished throughthe use of polarization diversity.

To further elucidate the process of triangulation using multiple sourceheads, reference is made again to Eq. (41). For typical applications, ais small compared with R₀ and Eq. (41) can be simplified to.$\begin{matrix}{N = {{\frac{a}{\lambda}\cos\quad\Psi} = {\frac{a\quad v}{c}\cos\quad\Psi}}} & (57)\end{matrix}$

The dependence on source spacing a and wavelength λ, or frequency ν, iseliminated from Eq. (57) by writing N in terms of the normalized fringenumber {overscore (ρ)} using Eq. (19):{overscore (ρ)}=cos Ψ  (58)Thus, the normalized fringe number corresponding to a particular sourcehead is a direct measure of a component ψ of direction from themid-point P_(m) of the source head to the observed point P₀. Thethree-dimensional coordinates of P₀ can be determined throughtriangulation given measurements from three or more source heads

Suppose that source heads are located at the three positions P_(m1),P_(m2), and P_(m3), and the orientations of the source pairscorresponding to each of these locations are given by the directioncosines (l_(s1), m_(s1), n_(s1)), (l_(s2), m_(s2), n_(s2)), and (l_(s3),m_(s3), n_(s3)). In terms of Cartesian coordinates and directioncosines, Eq. (58) takes the form $\begin{matrix}{{\overset{\_}{\rho}}_{i} = \frac{{l_{s_{i}}\left( {x - x_{m_{i}}} \right)} + {m_{s_{i}}\left( {y - y_{m_{i}}} \right)} + {n_{s_{i}}\left( {z - z_{m_{i}}} \right)}}{\sqrt{\left( {x - x_{m_{i}}} \right)^{2} + \left( {y - y_{m_{i}}} \right)^{2} + \left( {z - z_{m_{i}}} \right)^{2}}}} & (59)\end{matrix}$where the subscript i distinguishes between source heads. Determinationof P₀ coordinates (x, y, z) is achieved by measuring the normalizedfringe numbers {overscore (ρ)}₁, {overscore (ρ)}₂ and, {overscore (ρ)}₃for each source head and solving the set of three simultaneous equationsrepresented by Eq. (59). The formalism of Eq. (59) is convenient becauseit handles generalized source-head placement and orientation in acompact form.

For those cases where the object point P₀ corresponding to a particularpixel 22 is not illuminated by three or more source heads, the missingdirection information for that pixel 22 can be filled in byinterpolating between the directions calculated for surrounding pixels22. Furthermore, direction information obtained from multiple sourceheads can be combined with direction information obtained from pixellocation to improve measurement quality.

The fact that multiple source heads makes it possible to determine P₀without knowing receiver parameters (such as position, orientation,magnification, and distortion) makes it a simple matter to combineinformation from multiple imagers 22 and 24 (only one shown forclarity). This fact follows because the point clouds produced for eachcamera are already in the same coordinate system and do not need to beregistered by going through a calibration procedure. Multiple imagers 22and 24 can be positioned to view specific regions of interest at anydesired view angle and lateral resolution. Thus, one imager 22 and 24can give an overview of the entire object 10, and other imagers 22 and24 can inspect regions of interest at high resolution.

In one of the above major classes of embodiments, the fringe number N ata point P₀ on the surface of the object 10 is determined by countingintensity-oscillations caused by motion of one or both of the sources P₁and P₂. In its most rudimentary form, cycle counting requires samplingthe intensity at least twice per cycle in order to keep track of thecount. Also, to minimize cost, it may be desirable to count cycles usingstandard off-the-shelf components such as a charge-coupled device (CCD)connected to a frame grabber. Because the number of counts increases thefarther a point P₀ in the image frame is from the N=0 position, it maybe necessary to acquire and process hundreds of image frames using thisapproach.

The need for acquiring many image frames to determine N can be overcomeby using a more sophisticated counting technique. This technique,denoted as progressive fringe division, takes advantage of the periodicand predictable nature of the intensity modulation. Thus, N can bedetermined by sampling the intensity modulation at a few discrete valuesof the source spacing a.

As depicted in FIG. 13, progressive fringe division consists of varyingthe fringe size from an initial coarse spacing (Col. 1) to a final finespacing (Col. 3) in discrete steps. At each step, a wrapped phase map,or cycle map, (Row 4) is generated from phase-shifted fringe patterns(Rows 1-3). Each successive wrapped phase map is unwrapped based on theprevious unwrapped phase map in a bootstrapping operation. The ratio offringe spacings between steps is typically of the order of 10 or more,allowing a very dense fringe pattern to be unwrapped using a smallnumber of data frames. Calculating the position coordinates from a densefringe pattern improves precision. One of the advantages of progressivefringe division is that the algorithm correctly assigns the fringe ordernumber to each fringe, regardless of the complexity of the surface ofobject 10. For example, object 10 can contain surface discontinuities,large cliffs, and holes, or consist of a number of disjoint objects.Because progressive fringe division does not rely on surface continuity,it can be used to locate the position of a number of unconnecteddiscrete points that are distributed in space.

A further explanation of progressive fringe division and its embodimentis aided by considering three facts. (For simplicity, opposing motion ofthe sources P₁ and P₂ is assumed in this discussion, although thefollowing results can be formulated for other situations, includingmotion of only one source P₁ and stationary frequency-tuned sources.)First, the number of intensity oscillations N that occur at a point P₀as the source spacing increases from an initial value of zero to thefinal value a is equal to the fringe number N at P₀ for the final valuea. For example, if 10 were a simple object such as a plane, one couldcount N fringes on the surface of the object between the N=0 position(occurring at R₁=R₂) and the point P₀. The value of N includes partialcycles or fringes and thus is not necessarily a whole number.

This first fact can be further explained by noting that N can also beinterpreted as the number of fringes that move past the point P₀ to becollected inside the region between P₀ and N=0 as the source spacing aincreases from zero to its final value. In other words, when a=0 thereare no fringes within this region, and the number of fringes containedinside this region increases by one every time a fringe moves across P₀.This correspondence between fringe number N and oscillation cycles iskey to the robust three-dimensional imaging technique and makes itpossible to determine N at an arbitrary point P₀ without makingassumptions about the continuity of the surface surrounding the pointP₀. Consequently, discontinuities in the surface such as holes andcliffs (i.e., edges) are handled without ambiguity.

A second fact is that N is directly proportional to the separation aaccording to Eq. 57. Consequently, it is not necessary to complete anentire scan with a running from zero to its final value to determineN(a). The value of N for a spacing a₂ can be estimated from its value ata spacing a₁ using the relationshipN _(estimate)(a ₂)=(a ₂ /a ₁)N(a ₁)  (60)Likewise,N _(estimate)(a ₂ −a ₁)=N(a ₂)−N(a ₁)  (61)which states that knowledge of the value of N at two source spacings a₁and a₂ can be used to estimate its value at the smaller differencespacing a₂−a₁.

A third fact is that a phase-shifting measurement can be made at anyintermediate value of the source spacing a to provide a high-resolutionmap of the partial-cycle or “wrapped” component of the fringe number Nat each measurement point P₀ within the field of view. In doing so, thewrapped component is calculated from the phase by

 N _(wrapped)=φ/(2π)  (62)

and the phase is determined, for example, by Eq. (6). Thus, if φ rangesbetween ±π, N_(wrapped) ranges between ±0.5. Although a phase-shiftingmeasurement can determine N_(wrapped) to high precision, it leaves theinteger-valued offset for N undetermined.

Because finer fringes represent a smaller variation in {overscore (ρ)}per fringe, they can provide higher precision in the determination of{overscore (ρ)} (assuming successful unwrapping). For example, finerfringes reduce the effect that phase-step errors have on the measurementof the surface profile. Finer fringes, however, also make it moredifficult to perform the unwrapping because of the increased fringedensity. The advantage of progressive fringe division is that it allowsvery fine fringes to be unwrapped correctly to achieve the highestpossible resolution.

To implement progressive fringe division, wrapped cycle maps (asdepicted in Row 4 of FIG. 13) are produced for the imaged surface ateach of a number of discrete source separations a. It is oftensufficient to produce these cycle maps for three or fewer fringe sizes:coarse, medium, and fine. Successive unwrapped cycle maps are used in abootstrapping operation to unwrap the next cycle map without introducingerrors in the integer offset. The unwrapped cycle map corresponding tothe finest fringe pattern provides the highest-resolution measurement.

FIG. 14 depicts an illustrative series of steps used to executeprogressive fringe division. The procedure begins (step 150) by settingthe source spacing at an initial value a₁ (step 154). This value isnormally the smallest in a series of source spacings and is chosen so asto produce a coarse fringe pattern on the object 10. A wrapped cycle mapis then produced (step 158) by performing a phase-stepping measurement,as illustrated by Eq. (6). Step 158 is completed by converting phase tocycles by Eq. (62).

Independently of step 158, (step 162) an initial unwrapped estimate of Nfor the coarse fringe pattern corresponding to a₁ is obtained. Step 162may be performed simultaneously with step 158, before step 158, or afterstep 158. However, both step 158 and 162 must be performed in order tocontinue to the next step. There are many approaches for producing thisinitial estimate. For example, a₁ can be made to be so small that theentire object falls within one fringe (e.g., −0.5<N≦0.5) this makingunwrapping unnecessary. Alternately, a can be large enough to produce asmall number of fringes across the object 10 so that a simple model(such as a linear ramp) for the variation of N over the field of viewwill suffice as an estimate for N as long as this estimate is accurateto within one-half of a cycle at all measurement points to be unwrapped.Another example of a method for obtaining the initial estimate is toassume a generic shape or an expected shape and to calculate N based onEq. (40). Other examples are to use the result of a previous measurementon the same or a similar object 10, or to use cycle counting topartition the field of view into cycles. The number of frames necessaryfor cycle counting is small here because of the small number of fringescorresponding to a₁.

The purpose of the next step (step 166) is to unwrap the wrapped cyclemap obtained from the measurement in step 158. If the unwrapped estimatefrom step 162 is accurate to within one-half of a cycle, unwrapping isachieved by use of the expressionN(a)=N _(wrapped)(a)+Round[N _(estimate)(a)−N _(wrapped)(a)]  (63)

Note that the second of the two terms on the right-hand side of Eq. (63)is simply the integer offset required for unwrapping. Subtracting thewrapped measurement from the unwrapped estimate in this term produces astair-step-like function whose value is approximately equal to theinteger offset. Rounding to the nearest integer makes the expressionexact, as long as the error falls within the one-half-cycle limits.Otherwise Eq. (63) introduces an integer offset error in N that may varyacross the field of view.

The result of step 166 is an improved estimate of N for the smallestsource spacing a₁. In order to further improve the quality of themeasurement, a new source spacing a₂ is set in step 170 that produces afiner fringe pattern on the object 10. A new phase-stepping measurementis then completed in step 174 to yield a new wrapped cycle mapcorresponding to the finer fringe pattern. The unwrapping of thismeasurement requires a new unwrapped estimate corresponding to a₂. Thisestimate is obtained in step 178 by using Eq. (60) to scale the previousunwrapped estimate (obtained for the source spacing a₁ from step 166)into the appropriate range. Once scaling has taken place, the newwrapped cycle map from step 174 is unwrapped in step 182 by substitutingit and the scaled estimate from step 178 into Eq. (63).

The result of the first pass through steps 170 through 182 is a refinedestimate of N that corresponds to the larger source spacing a₂. Steps170 through 182 can now be repeated with successively finer fringes(larger source spacings) until optimal {overscore (ρ)} resolution isachieved. (Each time through the loop the source-spacing subscript isincremented by one.) Normally, optimal resolution is achieved in one tothree iterations. Typically, the ratio between the new and old sourcespacings is of the order of ten or more. The maximum value this ratiocan take is determined in practice by requiring that the error betweenthe estimated and true value of N remains under the one-half cyclelimit.

The loop represented by steps 170 through 182 in FIG. 14 is exited oncethe desired number of iterations has been completed. In step 186, N isconverted to {overscore (ρ)} through Eq. (19). If the objective of themeasurement is to determine full three-dimensional coordinates, atriangulation takes place using, for example, Eqs. (47)-(49) or Eq.(59), to obtain coordinates for each measurement point (step 190). Step194 represents the end of progressive fringe division. It should beappreciated that FIG. 14 is only an illustration of the procedure to befollowed for progressive fringe division, and that the component stepscan be executed in a number of different orders. For example, it may bedesirable to collect all data before beginning the calculations.

The ability to produce fringes of widely varying size for use withprogressive fringe division requires the source spacing to vary by thesame ratio as the fringe spacing. A technique is now described forsynthesizing a fringe pattern of a desired spacing from two othermeasurements. One advantage of this approach is that the twomeasurements used to synthesize the fringe pattern may be more readilyobtainable.

Fringe synthesis is based on the following modification of Eq. (61):N _(wrapped)(a ₂ −a ₁)=[N _(wrapped)(a ₂)−N _(wrapped)(a₁)]_(wrapped)  (64)This result follows from wrapping both sides of Eq. (61) and observingthat wrapping the difference N(a₂)−N(a₁) on the right-hand side of Eq.(61) is equivalent to wrapping the differenceN_(wrapped)(a₂)−N_(wrapped)(a₁) of individually wrapped components. Inother words the difference between the wrapped quantities within thesquare brackets in Eq. (64) ranges between ±1 and this difference mustbe wrapped to lie within the correct range of ±0.5.

Equation (64) provides a means for synthesizing phase-steppingmeasurements of wrapped N at a source spacing equal to the differencea₂−a₁ from individual phase-stepping measurements obtained at sourcespacings a₁ and a₂. This equation has a remarkable property for smallvalues of a₂−a₁. Although the individual measurements from which thesynthesized measurement is composed may be highly irregular and containnumerous discontinuities, the left-hand side of Eq. (64) can be smoothover the field of view, having only the number of wrappingdiscontinuities that correspond to the difference a₂−a₁. Thus fringesynthesis is an effective technique for producing an initial phase mapfor beginning progressive fringe division. Fringe synthesis can also beused, to synthesize any of the remaining unwrapped phase maps in thesequence to be used for progressive fringe division. If {overscore (ρ)}is to be calculated from a synthesized cycle map, Eq. (19) is modifiedto read $\begin{matrix}{\overset{\_}{p} = \frac{\lambda\quad{N\left( {\Delta\quad a} \right)}}{\Delta\quad a}} & (65)\end{matrix}$where Δa represents the spacing difference between the two measurements.

FIG. 14 a illustrates one way that fringe synthesis can be incorporatedinto the progressive-fringe-division flow chart in FIG. 14. Step 154′ isa modification of step 154 to include the selection of a base separationa₀ in addition to the separation a₁. Step 158′ is a modification of step158 to measure wrapped cycle maps at both separation values a₀ and a₁.Steps 160′ (inserted after Step 158) and 176′ (inserted after step 174)are additional steps that make use of Eq. (64) to synthesize the wrappedcycle map corresponding to the differences a_(n)−a₀. Step 186′ is amodification of step 186 that allows {overscore (ρ)} to be calculatedfrom a synthesized cycle map using Eq. (65).

One of the advantages of fringe synthesis is that it may reduce thedemands on a system for producing motion between sources P₁ and P₂. Forexample, a small incremental change from the widest source separationcan produce fringes corresponding to a very small source separation.This approach not only reduces the travel requirement, but alsoovercomes some potential limitations of the source heads described inFIGS. 10 and 11. For example, with these source heads it is difficult toproduce extremely small source separations, and fringes may becomeunstable due to vibrations when attempting to do so. Another advantageof fringe synthesis is that it may improve measurement repeatability andaccuracy due to the fact that it is normally easier to repeat a constantdifference between two source separations than it is to maintain anabsolute source-spacing calibration.

Yet another advantage of fringe synthesis is that it minimizes errors ofmotion due to source-head misalignment. These motion errors may occur,for example, if the focal spots P₁ and P₂ in FIGS. 10 and 11 do notoverlap for the nominal a=0 position. There are two types ofmisalignment to be considered. First, suppose that one of the focalspots P₁ is displaced out of the plane of the diagram with respect tothe other P₂ by an amount d. Even though these two focal spots P₁ and P₂each follow a straight-line trajectory and these trajectories can beparallel, the two spots miss by the distance d at their closest approach(i.e., the nominal a=0 position). As the spots P₁ and P₂ pass at closestapproach, the orientation of the fringe pattern on the object 10 flipsby 90° with respect to the nominal, or desired, orientation.Furthermore, the fringe spacing is never larger than that correspondingto a source separation d. (Alignment of the source head is facilitatedby adjusting the displacement d until the fringes stay properly orientednear a=0.)

In the second type of misalignment, one of the focal spots P₁ isdisplaced along the direction of motion 99 with respect to the otherfocal spot P₂. This type of misalignment is caused by a sidewaysdisplacement of prism 92 (i.e., the displacement is perpendicular toaxis 99 and is in the plane of FIGS. 10 and 11). At closest approach,one source P₁ lies directly behind the other source P₂, producing acircularly concentric fringe pattern on the object. As a increases, thefringes exhibit less curvature and approach their normal appearance.(Minimization of this source of error during source-head alignment isfacilitated by adjusting the prism 92 sideways for small a to minimizefringe curvature.)

The difficulty that motion errors create for progressive fringe divisionis due to the resulting phase errors which are magnified when Eq. (60)is used to produce a scaled estimate of N. Motion errors limit themagnitude of the a ratio that can be used without introducing half-cycleerrors in the estimate of N. Fringe synthesis overcomes this limitationbecause motion-induced phase errors are common to both measurements andcancel in the subtraction. Thus, even though the measurements mayproduce fringes that are distorted from the desired shape, thesynthesized fringes are normal.

Cancellation of phase errors between the two beams with fringe synthesishas the additional advantage of automatically compensating for a globalphase-offset error between the two beams. These phase-offset errors areintroduced, for example, by a path-length difference S₀ between the twoseparated beams that is not an integer multiple of the wavelength λ.Phase offset errors cause the N=0 position to occur at a fringe phase ofother than 0° (i.e., at other than an intensity maximum). These phaseerrors automatically cancel when performing fringe synthesis, making itunnecessary to calibrate the phase of the fringe pattern. Alternatively,phase calibration can be achieved by determining the precise N=0position by fringe synthesis and adjusting the phase-shifting elementfor constructive interference at that point.

The cancellation of phase errors for synthesized fringes is importantfor the additional reason that it tends to cancel out wavefront errorsin the illumination patterns falling on object 10 from the individualsources P₁ and P₂. Wavefront errors arise from the use of imperfect orextended sources and produce perturbations or ripples in the fringepattern. These perturbations translate into small height errors in themeasurement. Cancellation of wavefront errors occurs in fringe synthesisbecause these errors are largely independent of the distance betweensources. Therefore, the error is common to the measurements taken ateach source spacing and cancels due to the subtraction in Eq. (64).Fringe synthesis is an effective means for reducing errors due toillumination defects and can serve to decrease system cost by reducingrequirements on the quality of the source-head optics.

Fringe synthesis allows progressive fringe division to be carried outwith a reduced range of motion of the source points thus allowing asimpler source head design. Recall that in general, a source headprovides two types of fringe modulation—a variation in fringe size andsideways motion of the fringe pattern arising from phase shifting. For apure phase shift, the phase is changed without altering the position ofthe source. Another way of changing phase, however, is to move onesource P₁ towards or away from the object relative to the other sourceP₂. Although doing so changes the location of the source P₁, this changeis very small (less than a wavelength), and the resulting change inorientation of the source pair P₁ and P₂ is small if the sources aresufficiently far apart. Because the source separation can remain largefor fringe synthesis, both types of modulation can be achieved throughsmall motions of one or both source points P₁ and P₂. This reducedmotion requirement allows simple source heads to be designed. Forexample, a source head might consist of the fiber-optic-splitterarrangement depicted in FIG. 2 b. Phase shifting and variation in fringesize are accomplished by moving the end of one of the fibers inorthogonal directions.

Fringe synthesis has an important additional advantage of enablingprogressive fringe division to be used for measurements based onlaser-frequency tuning. Without fringe synthesis, application ofprogressive fringe division to the measurements would require anextremely high fractional tuning bandwidth in order to achieve the largevariations in fringe size that are necessary for progressive fringedivision. Fringe synthesis makes it possible to produce fringe-spacingvariations that lie far outside the conventional tuning range. Thetuning approach can provide measurements with very high repeatabilityand precision because of the fact that source motion is eliminated andfrequency can be measured and controlled to high precision.

Application of progressive fringe division and fringe synthesis withfrequency-tuning is explained with respect to Eq. (57). N has the samefunctional dependence on laser frequency ν as it does on source spacinga. (It is assumed that the path-length difference represented by S₀ inEq. (1) is zero, otherwise this offset must be accounted for in theequations.) Therefore, Eqs. (60), (63), and (64), which form the basisfor progressive fringe division and fringe synthesis, also apply tofrequency tuning if N is written as a function of frequency ν. Theexpressions that govern frequency tuning are then

 N _(estimate)(ν₂)=(ν₂/ν₁)N(ν₁)  (66)N _(wrapped)(ν₂−ν₁)=[N _(wrapped)(ν₂)−N _(wrapped)(ν₁)]_(wrapped)  (67)andN(ν)=N _(wrapped)(ν)+Round[N _(estimate)(ν)−N _(wrapped)(ν)]  (68)Equations (19) and (65) also take the modified forms $\begin{matrix}{\overset{\_}{\rho} = {\frac{c}{a}\frac{N(v)}{v}}} & (69) \\{{and}{\overset{\_}{p} = {\frac{c}{a}\frac{\quad{N\left( {\Delta\quad v} \right)}}{\Delta\quad v}}}} & (70)\end{matrix}$respectively, where Δν represents the difference frequency if N has beensynthesized from two measurements.

FIG. 15 illustrates the steps to be followed for execution ofprogressive fringe division using fringe synthesis and frequency tuning.(Note that FIG. 15 also applies to progressive fringe division usingfringe synthesis and source motion if ν is replaced by a.) In thisillustration, all data is collected at the beginning of the process. Theprocedure begins (step 200) by selecting the laser frequencies ν₀, ν₁, .. . ν_(n) (step 204) to be used in the measurement of wrapped cycle mapsN_(wrapped)(ν₀), N_(wrapped)(ν₁), . . . N_(wrapped)(ν_(n)) (step 208).Equation (67) is then used to synthesize wrapped cycle maps for thedifference frequencies ν₁−ν₀, ν₂−ν₀, . . . ν_(n)−ν₀ (step 212). Anestimate of the unwrapped cycle map is then obtained (step 216) for thefirst difference ν₁−ν₀ using one of many possible approaches (e.g., step162 of FIG. 14). A preferred approach is to begin with a differenceν₁−ν₀ that is small enough so that N(ν₁−ν₀) lies within the ±0.5-cyclelimit. In step 220, Eq. (68) is used to calculate the unwrapped cyclemap for the next larger difference ν_(i)−ν₀ in the series. Thisunwrapped cycle map is scaled using Eq. (66) in step 224 to be fed backinto step 220 to unwrap the next synthesized cycle map in the series.The loop is exited after the cycle map corresponding to the finalfrequency difference ν_(n)−ν₀ has been unwrapped. In step 228, Eq. (70)is used to convert the final unwrapped cycle map N to fringe number{overscore (ρ)}. Equation (69) is used if the final cycle map N was notsynthesized. In step 232 directional information corresponding to{overscore (ρ)} is transformed into three-dimensional coordinates foreach point of interest P₀ using, for example, Eqs. (47)-(49) or Eq.(59).

It should be appreciated that progressive fringe division and thecombination of progressive fringe division with fringe synthesis arepowerful general techniques for resolving counting ambiguities andrefining counting estimates and that these techniques have applicationsbeyond those described above. In particular, these techniques are notlimited to the above methods and apparatus for acquiring data or even tothe analysis of fringes.

With reference to FIG. 16, a variation is now described that utilizesthe progressive-fringe-division and fringe-synthesis techniques onunresolved fringes, or image speckle. In this figure, laser beam 44 isincident on beam splitter 48 which splits beam 44 into beams 46 and 50.Beam 50 reflects off beam splitter 48 and illuminates a region ofinterest on object 10. Beam 46 passes through beam splitter 48 andilluminates reference surface 102. Light reflected off of object 10 andreference surface 102 is recombined by beam splitter 48 and passesthrough lens 24 which produces a speckled image on detector array 22.Phase shifting is accomplished by inserting a phase-shifting element(not shown) in one of the separated beam paths. The frequency of laserbeam 44 is variable or can be switched between two or more discretevalues. Path length differences due to a difference in height z betweenobject 10 and virtual image 102′ of reference surface 102 produce amodulation of speckle intensity that changes with laser frequency. Thephase of the modulation at a particular laser frequency can bedetermined accurately through phase-shifting measurements.

There are no fringes produced on the surface of object 10 in FIG. 16because the object 10 is illuminated by only one laser beam 50.Interference occurs at the detector 22 because of the coherentsuperposition of light from the two beams 46 and 50. In accordance withEqs. (1)-(5), varying the laser frequency causes the individual specklelobes in the image of the object 10 to oscillate in intensity at a ratethat is proportional to the path length difference s. For simplicity,assume that the reference surface 102 is flat and lies in the x-y plane.Let z represent the height above the virtual reference surface 102′ ofthe point P₀ on object 10 to be measured. Nominally, s=2z (due toround-trip propagation) and z can be calculated from N by$\begin{matrix}{z = {\frac{c}{2}\frac{N\left( {v_{n} - v_{0}} \right)}{v_{n} - v_{0}}}} & (71)\end{matrix}$if N is obtained through fringe synthesis, and by $\begin{matrix}{z = {\frac{c}{2}\frac{N\left( v_{n} \right)}{v_{n}}}} & (72)\end{matrix}$otherwise.

The procedure for producing three-dimensional images using FIG. 16 isthe same as that outlined in FIG. 15, with the exception that in step232 , Eq. (71), or Eq. (72), is used to convert N to z. The approachdepicted in FIG. 16 does not rely upon triangulation. Consequently, ithas the advantage that shadowing effects between source P₁ and P₂ andreceiver 22 and 24 can be eliminated. This approach is particularlyuseful for shorter-range applications, including three-dimensionalmicroscopy, where the separated path lengths remain small.

The above embodiments are based on interference using coherentillumination. Those embodiments that use a lens 24 to form an image ofthe object 10 on a detector 22 have the potential disadvantage that theresulting image is speckled and that speckle can limit range resolution.It should be noted that detectors 23 placed directly on the surface ofthe object do not suffer from this limitation. Speckle occurs forimaging with coherent illumination because the finite point-spreadfunction of the lens 24 allows light scattered from regions surroundingP₀ on the surface of object 10 to interfere at point P_(i) at detector22. The average speckle size at the detector plane is determined by thesize of the point-spread function of the lens. Speckle can cause ameasurement of {overscore (ρ)} to be drawn to one side or the other byscattering regions surrounding P₀ whose contributions can phase upconstructively at the image point P_(i).

A number of techniques are now presented for mitigating the effects ofspeckle on a measurement. In practice, speckle effects tend to averageout if many speckles fall within the area corresponding to a singlepixel of the detector array 22. One way of satisfying this condition isto require that the interference fringes are resolved by lens 24 andthat the point-spread function of lens 24 is small enough to cause manyspeckles to fall on each element of detector array 22. This approachworks well in situations that do not require the ultimate lateralresolution. Generally, lateral resolution is traded off for speckleaveraging.

In situations requiring high lateral resolution, it can be necessary tomore closely match speckle size and pixel size. In general it isdesirable to reduce the magnitude of the side lobes of the point-spreadfunction of the lens (i.e., to apodize). Doing so reduces the ability ofa scattering region that would otherwise be contained within a strongside lobe of the point-spread function to bias the measurement of{overscore (ρ)}. Apodization can result in a slightly degraded lateralresolution. In some instances, it can be advantageous to trade off thislateral resolution for improved range resolution.

An additional technique for mitigating speckle effects is to minimizethe variation of {overscore (ρ)} over the region of the surface ofobject 10 corresponding to an individual pixel 22. For example,increasing the pixel density while maintaining a constant ratio ofspeckles per pixel 22 decreases the change in {overscore (ρ)} from oneside of the region corresponding to the pixel 22 to the other andimproves both range resolution and lateral resolution.

For a given optical configuration and pixel density, the variation of{overscore (ρ)} over individual pixels 22 can be minimized by making anappropriate choice of the position and orientation of the source head.Variation of {overscore (ρ)} is minimized, for example, if the surfaceelement corresponding to a pixel 22 lies along an equiphase surface ofthe three-dimensional fringe pattern. In other words, speckle effectsare minimized if the surface being measured is parallel (or nearlyparallel) to a surface of constant phase for the illuminating fringepattern. This condition can be achieved by using grazing incidence withthe vector representing the orientation of the two source points beingparallel to the surface normal. Except for specialized cases, it isimpossible to satisfy this condition for every point P₀ on the surface.The condition can be approximated, however, for many objects ofpractical importance, including, for example, aerodynamic surfaces suchas auto-body and airframe panels.

Many objects have a broad range of surface slopes and orientations,making it impossible to satisfy the above condition for minimizing{overscore (ρ)} over the entire surface using a single source head. Inthese situations, this condition can be better satisfied through the useof multiple source heads that are positioned such that one of them isresponsive to each major region of the object 10, or to those regions ofgreatest interest. It is assumed that some form of multiplexing takesplace to distinguish which information comes from each source head. Ifmore than one source head illuminates the same region, the resultingmeasurements can be weighted according to the level of speckle noiseexpected in each measurement for that region. Multiple source heads canalso help to overcome shadowing limitations. Information from multiplesource heads can be readily combined for a given detector 22 that viewsa region of overlap. Registration is automatic because the angularinformation corresponding to each pixel is the same for each sourcehead.

In some instances, it is not possible to illuminate certain regions ofan object 10 in a way that satisfies the condition for minimizing thevariation of {overscore (ρ)} over a pixel. An additional technique formitigating speckle effects that is not affected by this limitation isbased on speckle averaging. Speckle averaging can be achieved by makingadditional measurements with slightly different parameters (e.g.,variations in the optical configurations). Alternatively, the parameterscan be varied during the exposure. Averaging effectively reduces speckleeffects if the set of parameters being varied changes enough to producedifferent statistical realizations of the speckle pattern.

In one embodiment, the mid-position P_(m) between sources is theadjusted parameter. If the direction of displacement of P_(m) is out ofthe plane of FIGS. 1 and 12, then variations of object illumination willbe minimized. Variations of P_(m) are explicitly accounted for in Eqs.(47)-(56) and (59). Reduction of speckle effects can be achieved, forexample, by averaging the individual measurements of (x, y, z)coordinates for different values of P_(m).

In another embodiment, the source separation a and the laser frequency νvary simultaneously during the exposure time such that the fringepattern remains stationary. The condition for the fringes to remainstationary is seen by inspection of Eq (57) to be that the ratio a/λ (orthe product a ν) remains constant. To achieve stationary fringes, themotion of the point sources P₁ and P₂ can be slaved to the tuning of thelaser 40, or vice versa, by a feedback mechanism such as a fringemonitor. The fringe monitor may consist of discrete detectors or alinear array of detectors that is incorporated into the source head andmeasures a fringe pattern that is separated from the main beam by a beamsplitter.

For speckle averaging to be effective, the tuning excursion used islarge enough to cause a number of decorrelation cycles to occur in theimage speckle. Care should be taken to minimize the path-length offsetS₀ between the separated paths in the source head. Otherwise, the phaseof the fringe pattern will vary with frequency shift ΔΔ by theexpression $\begin{matrix}{{\Delta\quad\phi} = {2\quad\pi\frac{\Delta\quad v\quad S_{0}}{c}}} & (73)\end{matrix}$Alternatively, the path-length offset can intentionally be set to anonzero value and the fringe pattern “strobed” at 2π increments of thephase Δφ to freeze the phase of the fringe. Different phase shifts couldthen be achieved by varying the strobe timing.

It will be appreciated that cycle counting, progressive fringe division,and progressive fringe division using fringe synthesis are generaltechniques for resolving counting ambiguities and increasing measurementprecision, and that their usefulness goes far beyond the applicationsdescribed above. Furthermore these techniques can be applied togeneralized signals (including one-dimensional signals) and are notlimited to sinusoidal variations.

It should also be appreciated that these techniques apply to generalstructured-light patterns formed by arbitrary means. Examples of meansfor producing structured light patterns are the interference ordiffraction of coherent radiation, the “white-light” superposition ofinterference or diffraction patterns formed at different wavelengths,and the imaging of patterns onto the object with a lens using eithercoherent or incoherent radiation. As an example of the imaging approach,a white-light pattern produced by a digital projector can be made toexpand and contract to produce accordion motion and to translatesideways to produce phase modulation. Although projecting white-lightpatterns onto the surface in this manner may eliminate speckle effects,this approach has certain disadvantages. With an imaged light pattern,there is a limit to how small the fringe period may be. It is alsonecessary to consider the depth of field of the projected pattern. Itmay not be possible to project a fine fringe pattern from an obliqueangle that is in focus over the entire object. On the other hand,fringes produced by interference or diffraction are always “in focus” onthe object surface, no matter what the distance to the observation pointor the size of the fringes.

A further embodiment of the invention maintains the advantages offorming fringes by interference or diffraction and eliminates speckleeffects by forming these fringes in broad-band illumination or whitelight. This embodiment is based on the incoherent superposition ofinterference-fringe intensities formed at different componentwavelengths in the illumination spectrum. If these fringes have the samesize and shape, the interference-fringe intensities corresponding todifferent wavelengths reinforce each other at every point in thepattern.

By reference to Eq. (57), fringes of the same size and shape areproduced by fixing the ratio a/λ. This objective can be achievedsimultaneously for each component wavelength by using a diffractiongrating followed by a lens. For small diffraction angles, the angulardeviation of the first-order beam diffracted by the grating isproportional to the wavelength of that beam. The lens converts thisangular deviation into a displacement of the source P₁ or P₂ that isalso proportional to λ, thus making it possible to maintain a constanta/λ ratio. In this embodiment, the location of source P₁ or P₂ issmeared out in wavelength. White-light phase shifting can be achieved bytranslating the grating sideways or through the use of a white-lightphase shifter, based on, for example, the Pancharatnam phase.

There are many possible optical arrangements for implementing a sourcehead based on these principles. In one arrangement, Bragg gratings areplaced in beams 46 and 50 in FIG. 10. The gratings (not shown) and prism92 are positioned such that the two focal spots corresponding to theundiffracted beams overlap and the first-order beams are deviatedtowards the base of prism 92. This arrangement causes the sourceseparation a corresponding to the diffracted beams to be proportional tothe optical wavelength λ. White-light phase shifting, is achieved bytranslating one of the Bragg gratings laterally. Variation of fringesize is achieved by changing the period of the grating. In oneembodiment, the grating period is changed electronically using a Braggcell, or acousto-optic modulator. In this embodiment, both Bragg cellsare driven at the same frequency and phase shifting is accomplished byshifting the phase of one drive signal with respect to the other. (Thefringes are stationary because each beam suffers the same Dopplershift.) In another embodiment, Bragg gratings of different periods aremoved into place sequentially. In yet another embodiment, a singlediffractive element is placed in beam 44. A separate white-light phaseshifter (not shown) is placed in one of the beams 46 or 50. In someembodiments of a white-light phase shifter known to those skilled in theart, beam splitter 48 is a polarizing beam splitter.

Referring now to FIG. 17, therein is shown an embodiment of a broadbandor white-light interference fringe projector. Source 250 generates asubstantially collimated beam of radiation 252 that is directed todiffraction grating 254 at substantially normal incidence. Diffractiongrating 254 has grating period D. Input beam 252 is represented by threeconstituent wavelength components λ₁, λ₂, and λ₃ for illustration. Beam252, in actuality, can have arbitrary spectral composition. Diffractiongrating 254 splits beam 252 into multiple diffracted beams whosediffraction orders can be represented by the integer m. For illustrationpurposes, only rays along the perimeter of beam 252 are shown. Thesediffracted beams propagate at angles θ_(m) with respect to the opticalaxis 258 according to the grating equation for normal incidence, whichis given by: $\begin{matrix}{{\sin\quad\theta_{m}} = \frac{m}{\lambda\quad D}} & (74)\end{matrix}$

In one embodiment, diffraction grating 254 is designed to maximize andequalize the diffracted efficiency for the diffraction order m=+1diffracted beam 260 and the diffraction order m=−1 diffracted beam 262.In other embodiments, diffraction grating 254 is designed to maximizeand equalize the diffracted efficiency for any set of positive andnegative beams of equal order |m|, and to minimize the energy diffractedinto all other orders. Any residual undiffracted (m=0) beam 264, willpass undeviated through diffraction grating 254 and is focused by lens266 onto focal spot 268.

The spectral components λ1, λ2, and λ3 of focal spot 268 substantiallyoverlap. Focal spot 268, in one embodiment, may be substantially blockedby the central obstruction 270 of optional double slit 272. Thedifferent spectral components λ₁, λ₂, and λ₃ of diffracted beams 260 and262 are focused by lens 266 onto spectral regions 274 and 276. Thedistance a(λ) between the focal spot within spectral region 274 and thefocal spot within spectral region 276 corresponding to a givenwavelength λ is substantially proportional to the wavelength λ. Aperturestop 278 of lens 266, in one embodiment, can be used to block undesiredhigher-order diffracted beams. Any undesired residual diffracted ordersthat pass through lens 266 can be blocked, in another embodiment, by theopaque regions of optional double slit 272. Radiation from the twospectral regions 274 and 276 expands and overlaps as it propagates andforms a broadband interference-fringe pattern 280. Fringe pattern 280has representative fringe period d at representative distance R fromdouble slit 272.

Prior equations such as Eq. (57) which are based on a specific sourceseparation a and a specific wavelength λ, can be applied to first orderto the broadband interference fringe projector illustrated in FIG. 17 bymaking the substitution $\begin{matrix}{\frac{a}{\lambda} = \frac{2f}{D}} & (75)\end{matrix}$where f is the focal length of lens 266 and D is the period ofdiffraction grating 254.

It should be noted that the fringe-generation scheme depicted in FIG. 17can also produce fringes using narrow-band or laser illumination. Oneadvantage of using diffraction grating 254 followed by lens 266 fornarrow-band illumination is that fringe period d is insensitive towavelength so that frequency drifts of the source do not substantiallydegrade measurements. For example, although laser diodes are relativelyinexpensive and readily available sources, they have atemperature-dependent operating wavelength. However, since thistechnique is insensitive to temperature-dependent wavelength shifts,laser diodes can be used without measurement degradation.

In one embodiment, diffraction grating 254 is a thin phase gratinghaving a square-wave phase profile whose relative phase delay alternatesbetween 0° and 180° for a representative wavelength, λ₂, with a 50% dutycycle. Grating 254 is relatively efficient, diffracting approximately40.5% of the available energy into each of the m=−1 and m=+1 diffractedorders, and nominally 0% into the m=0 and other even diffracted orders.The relative phase delay of grating 254 is a function of wavelength,causing the energy in the undiffracted beam 264 at order m=0 to increasefor wavelengths that differ from the representative wavelength λ₂. Inone embodiment, grating 254 is made relatively thin which reduces thewavelength dependence of the grating so that it performs well over awide frequency spectrum.

Phase shifting the resulting broadband (or narrow-brand)interference-fringe pattern 280 is achieved by simply translatingdiffraction grating 254 in the direction 282 shown in FIG. 17.White-light or broadband phase shifting is realized because atranslation of diffraction grating 254 by a given fraction of thegrating period D shifts each spectral component of fringe pattern 280 bythe same fraction of the fringe period d. For example, a translation ofgrating 252 by D/4, or one-quarter cycle, also shifts theinterference-fringe pattern 280 by one-quarter cycle, or 90°.

Accordion motion (or variation of fringe size) of interference-fringepattern 280 can be achieved in a number of ways. In one embodiment, forsmall diffracted angles θ_(m), doubling the period D of grating 254halves the magnitude of θ_(m) of beams 260 and 262 (this is asmall-angle approximation of Eq. (74)), which in turn doubles the periodd of fringe pattern 280. In another embodiment, decreasing the focallength f of lens 266 can increase the period d of fringe pattern 280.The period d of fringe pattern 280 is related to the period D ofdiffraction grating 254, the focal length f of lens 266, and thepropagation distance R to first order by $\begin{matrix}{d = \frac{R\quad D}{2\quad f}} & (76)\end{matrix}$

In order to produce, a continuous variation in d of fringe pattern 280or to produce an arbitrary set of d values lying along a continuum, itis necessary to be able to continuously vary one or more of theparameters in Eq. (76). In one embodiment, lens 266 may be a zoom lenswith variable focal length f. In another embodiment, the period D ofgrating 254 may be varied by stretching the grating with an appliedforce. In yet another embodiment, the period D of grating 254 may bevaried electronically through, as an example, the variable grating mode(VGM) effect in liquid crystal devices. In yet another embodiment, theperiod of grating 254 may vary along the axis orthogonal to the gratinglines so that sliding grating 254 sideways in the directionperpendicular to 282 can control the period D of grating 254. By usingfringe synthesis, previously described, it is possible to achieve largevariations in effective period d with small variations inf, D, or R. Forexample, fringe-synthesis Eqs. (64) and (67) can be modified as follows:$\begin{matrix}{{N_{wrapped}\left( {\frac{f_{2}}{D_{2}} - \frac{f_{1}}{D_{1}}} \right)} = \left\lbrack {{N_{wrapped}\left( \frac{f_{2}}{D_{2}} \right)} - {N_{wrapped}\left( \frac{f_{1}}{D_{1}} \right)}} \right\rbrack_{wrapped}} & (77)\end{matrix}$where N_(wrapped) is now a function of the ratio f/D.

It is typically adequate to have a predetermined discrete set of valuesfor f and/or D and to resolve fringe-number ambiguities throughprogressive fringe division as previously discussed. In one embodiment,progressive fringe division is accomplished by sequentially moving adiscrete set of diffraction gratings 254 or lenses 266 into respectivepositions in FIG. 17. In alternative embodiments, grating 254 or lens266 is switchable and assumes discrete values of D and f Some examplesof switchable gratings include liquid-crystal spatial light modulators,patterned alignment liquid-crystal spatial light modulators,electrically switchable diffractive optical elements, cascadedelectrically switchable diffractive optical elements, andmicroelectromechanical systems (MEMS).

In one embodiment, illustrated in FIG. 18, diffraction grating 254 is aliquid-crystal spatial light modulator 290 consisting of a linear arrayof long parallel phase retarders 292, or pixels, whose phase retardancecan be controlled to produce a cyclical phase-retardance pattern 294. Inthis manner, a thin phase grating can be produced and actuatedelectrically. For example, it is possible to produce a square-wave phaseprofile whose nominal relative phase delay alternates between 0° and180° with a 50% duty cycle. The period D and offset 282 of the resultingdiffraction grating 254 are variable in discrete steps with highrepeatability. Thus, both the fringe spacing d and the phase shift ofthe resulting fringe pattern 280 is controllable electrically indiscrete repeatable steps at high speeds.

In FIG. 18, w_(p) is the width of pixel 292, and n_(block) is the numberof pixels 292 that are repeated at the same phase retardance level toproduce one half of a 50%-duty-cycle thin phase grating. As an example,n_(block)=2 in FIG. 18. The grating period D is given byD=2n _(block) W _(p)  (78)and can be varied by changing the value of n_(block). The smallest phaseshift Δφ of diffraction grating 254, and hence of interference-fringepattern 280, that can be produced for a given value of n_(block) is$\begin{matrix}{{\Delta\quad\phi} = \frac{180^{\circ}}{n_{block}}} & (79)\end{matrix}$Thus, for example, phase shifts of ±90°, ±180°, and ±270° can beproduced for an n_(block) value of 2 and phase shifts of ±60°, ±120°,±180°, ±240°, and ±300° for an n_(block) value of 3. A generalized fromof Eq. (6) that is valid for three arbitrary phase shifts φ₁, φ₂, and φ₃can be expressed as: $\begin{matrix}{\phi = {\tan^{- 1}\frac{{I_{1}\left( {{\cos\quad\phi_{2}} - {\cos\quad\phi_{3}}} \right)} + {I_{2}\left( {{\cos\quad\phi_{3}} - {\cos\quad\phi_{1}}} \right)} + {I_{3}\left( {{\cos\quad\phi_{1}} - {\cos\quad\phi_{2}}} \right)}}{{I_{1}\left( {{\sin\quad\phi_{3}} - {\sin\quad\phi_{2}}} \right)} + {I_{2}\left( {{\sin\quad\phi_{1}} - {\sin\quad\phi_{3}}} \right)} + {I_{3}\left( {{\sin\quad\phi_{2}} - {\sin\quad\phi_{1}}} \right)}}}} & (80)\end{matrix}$where I₁, I₂, and I₃ are signal intensities corresponding to phaseshifts φ₁, φ₂, and φ₃. Thus, the phase shift values can be selecteddifferently for each value of n_(block) according to the availability ofphase-shift values.

Fringe synthesis is an effective means of obtaining additional values ofD beyond those achievable by varying the integer n_(block) in Eq. (78).The available values of the effective grating period D_(eff) that can besynthesized from two measurements with different values of n_(block) aregiven by $\begin{matrix}{D_{eff} = \frac{w_{p}}{\frac{1}{n_{block1}} - \frac{1}{n_{block2}}}} & (81)\end{matrix}$where n_(block1)<n_(block2). Large values of D_(eff) can be obtainedusing Eq. (81) by making n_(block1) and n_(block2) successive integers.As an illustration of a possible measurement strategy, assume that thepixel width w_(p) is 10 μm and that a sequence of three measurements istaking with n_(block0)=2, n_(block1)=19, and n_(block2)=20. Thissequence can be used to produce a first grating period D of 40 μm usingn_(block)=2 in Eq. (78) and a second grating period of 400 μm usingn_(block)=20 in Eq. (78). A third, and much larger grating period, of4.2 mm can be synthesized by using n_(block1)=19, and n_(block2=)20 inEq. (81). The ratio between successive grating periods in this sequenceis approximately ten, which is a reasonable sequence for progressivefringe division.

Referring back to FIG. 17, wide variations of n_(block) producecorresponding wide variations in the spread and location of spectralregions 274 and 276. In one embodiment, a more sophisticated version ofdouble slit 272, such as beam block 296 shown in FIG. 19, may then beused to eliminate unwanted residual diffracted orders. Beam block 296comprises two nested double slits and includes central obstruction 268.The outer double slit 275 passes spectral regions 274 and 276 for thesmallest value n_(block0) used in the measurement sequence in the aboveexample, while the inner double slit 277 passes the desired spectralregions 274′ and 276′ for the larger values n_(block1) and n_(block2).

In yet another embodiment illustrated in FIG. 20, accordion motion isachieved by placing lens 300 on optical axis 258 such that images 302and 304 of spectral regions 274 and 276 are formed at image plane 306.Note that in another embodiment, images 302 and 304 may be virtualimages (not shown), if the focal length of lens 300 is negative.Accordion motion results in one embodiment, by varying the magnificationof images 302 and 304 by moving lens 300 along optical axis 258. Or, inanother embodiment, accordion motion results by changing the focallength of lens 300. In yet another embodiment, lens 300 is a zoom lens,which varies the focal length without changing the location of imageplane 306. In still an alternative embodiment, a discrete set of lensesof different focal lengths can be placed in suitable positionssequentially. The use of lens 300 produces accordion motion withoutchanging any of the components within FIG. 17, including double slit272.

Yet another embodiment of a broadband interference-fringe projector isshown in FIG. 21. This embodiment includes broadband source 250, anacousto-optic modulator (AOM) 306, and a lens 266. AOM 306 is drivenwith a compound signal 308 generated by multiplier 310 which multipliesa sinusoid 312 having a variable frequency f_(m) by a sinusoid 314having a fixed frequency f_(c). Compound signal 308 produces twotraveling acoustic waves of different periods in AOM 306 that in turngenerate two angularly separated beams 260 and 262. The differentspectral components of diffracted beams 260 and 262 are focused by lens266 into spectral regions 274 and 276, where the separation a(λ) betweenthe focal spot within spectral region 274 and the focal spot withinspectral region 276 corresponding to a given wavelength λ issubstantially proportional to the wavelength λ. In addition, themidpoint between like spectral components of spectral regions 274 and276 is substantially localized at position 268 for each spectralcomponent. By adjusting f_(m) the separation a(λ) for each wavelengthcomponent λ is adjusted about point of symmetry 268 from zero separationto the maximum separation permitted by the bandwidth of AOM 306.Radiation from the two spectral regions 274 and 276 expands and overlapsas it propagates to form a broadband interference-fringe pattern 280 ofrepresentative period d at representative distance R. Varying f_(m)causes fringe pattern 280 to expand or to contract.

Since the pressure variations across AOM 306 are traveling, beams 274and 276 are Doppler shifted with respect to one another. This causesfringe pattern 280 to travel across the region of overlap at a speedproportional to the difference frequency between the two frequencycomponents of compound signal 308. Interference pattern 280 can beeffectively frozen at a particular spatial phase by amplitude modulatingsource 250 at the difference frequency 2f_(m) of the two beams 260 and262. The spatial phase of the fringes 280 can be precisely controlled bychanging the phase (e.g. changing the delay) of the laser drive signal316 with respect to the AOM control signal 308. Alternatively, drivesignal 316 can be used to control an external amplitude modulator placedin the optical path (not shown) or to modulate the sensitivity ofdetector 22 used to observe the fringe pattern.

In the above embodiments of a broadband interference-fringe projector,beam 252 is substantially collimated so that diffractive element 254(FIG. 17) or 306 (FIG. 21) diffracts each spectral component of a givendiffraction order m into the same diffracted angle θ_(m). Othervariations of this configuration are also possible, and remain withinthe spirit and scope of this invention. For example, in alternateembodiments, beam 252 may be either diverging or converging. In yetanother embodiment, beam 252 may enter diffractive element 254 atoblique incidence. In still another embodiment, the order of therefractive and diffractive elements may be reversed.

Many alternative light sources 250 may be used, depending on the degreeof temporal and spatial coherence desired. Low temporal coherence (broadspectral content) reduces or eliminates speckle effects. Whereas, highspatial coherence allows for tighter focal spots to be formed for eachspectral component in spectral regions 274 and 276. Generally, tightfocal spots improve the visibility of fringes and increase the depth offield of fringe pattern 280. Note that the depth of field is infinitefor spatially coherent sources. Additionally, tight focal spots alsomake it easier to separate spectral regions corresponding to differentdiffracted orders m so that undesired spectral regions can be blockedwith representative masks 272 or 296.

One method of achieving high spatial coherence is to make light source250 laser based. In one embodiment, source 250 is a laser diode withcollimating optics. Laser diodes with spectral widths of approximately 3nm are commonly available. In another embodiment, the spectral width canbe broadened by coupling together an array of laser diodes operating atdifferent wavelengths into a single beam. In still another embodiment, arapidly scanning tunable laser can be used. Another approach tobroadening the spectrum of a laser is to pump a standard single-modesilica fiber with a passively Q-switched microchip laser. A variety ofnonlinear effects in the fiber produce an extremely broadband spectrumat the output end of the fiber. In yet another approach, broadbandillumination is achieved with a modelocked titanium:sapphire laser.

There are many other approaches for generating beam 252 that rely onmore conventional sources. Lower (but adequate) spatial coherence can beachieved, for example, by coupling an arc lamp into an optical fiber.The output end of the fiber acts like an extended source. If the outputof the fiber is collimated using a lens, the longer the focal length ofthe lens, the smaller the variation in the angle of propagation in beam252 and the tighter the focal spots that can be formed within spectralregions 274 and 276. When using an extended source, spatial incoherenceeffects are minimized by placing lens 266 at a distance along opticalaxis 258 such that the surface of diffraction grating 254 or the activearea of AOM 306 would be imaged onto a plane on or near the surface ofobject 10 being illuminated. This configuration minimizes spatialincoherence effects because the rays that reach a given area of fringepattern 280 to interfere all originate from the same region of thediffractive element where the input beam is split into differentdiffracted orders.

The above embodiments for projecting fringe patterns (whether based onnarrow-band or broad-band illumination) vary in the accuracy andrepeatability to which the phase shifts φ₁, φ₂, and φ₃ can be set. Forinstance, phase shifting by moving an optical component such as mirror94 or 96 in FIG. 10 or grating 254 in FIG. 17 with a piezoelectrictransducer suffers from inconsistencies due to hysteresis. Variations ofthese phase shifts from their assumed values cause errors in thecalculation of φ in Eq. (6) or Eq. (80). These errors in φ are periodicin nature and produce a rippled appearance in the reconstructed surfaceprofile. Likewise, a rippled appearance is caused by imperfections inthe illumination sequence. These imperfections may be caused, forexample, by changes in the exposure level or bias level duringacquisition of signal intensities I₁, I₂, and I₃. Exposure-levelvariations may occur, for instance, from fluctuations in sourceintensity or from differences in exposure time due to shutterimperfections.

The ripple pattern occurs on the reconstructed surface with the sameorientation as the projected fringe pattern on the physical surface 10.The dominant period of the ripple pattern depends on the error source.Phase-shift errors, for example, produce two ripple oscillations perfringe period. Ripple can be the dominant error source in a surfaceprofile measurement, particularly if speckle has been eliminated throughbroad-band illumination, or if speckle effects from narrow-bandillumination have been suppressed through one of the mitigationtechniques described above.

A versatile and robust technique, referred to as histogram-basedderippling, is now introduced that corrects for ripple error. In thistechnique, the data is analyzed to determine actual phase offsets andexposure-level variations so that φ can be calculated using correctedvalues. In order to elucidate this technique, Eq. (80) is firstrewritten in a form where assumed values, as well as quantitiescalculated from assumed values, are differentiated from actual values:$\begin{matrix}{\hat{\phi} = {\tan^{- 1}{\frac{{I_{1}\left( {{\cos\quad{\hat{\phi}}_{2}} - {\cos\quad{\hat{\phi}}_{3}}} \right)} + {I_{2}\left( {{\cos\quad{\hat{\phi}}_{3}} - {\cos\quad{\hat{\phi}}_{1}}} \right)} + {I_{3}\left( {{\cos\quad{\hat{\phi}}_{1}} - {\cos\quad{\hat{\phi}}_{2}}} \right)}}{{I_{1}\left( {{\sin\quad{\hat{\phi}}_{3}} - {\sin\quad{\hat{\phi}}_{2}}} \right)} + {I_{2}\left( {{\sin\quad{\hat{\phi}}_{1}} - {\sin\quad{\hat{\phi}}_{3}}} \right)} + {I_{3}\left( {{\sin\quad{\hat{\phi}}_{2}} - {\sin\quad{\hat{\phi}}_{1}}} \right)}}.}}} & (82)\end{matrix}$In Eq. (82), {circumflex over (φ)}₁, {circumflex over (φ)}₂, and{circumflex over (φ)}₃ are the assumed phase-shift values and{circumflex over (φ)} is the calculated phase using these assumedvalues.

Variations due to imperfections of the illumination sequence may beincorporated into Eq. (82) by writing the intensity in the form$\begin{matrix}{{I_{i} = {B_{i} + {A_{i}\frac{1 + {\cos\left( {\phi - \phi_{i}} \right)}}{2}}}},} & (83)\end{matrix}$where the subscript i takes one of the values 1, 2, or 3, and representsa particular member of the illumination sequence. The parameters A_(i)and B_(i) allow for variations in the exposure level and bias level ofthe illumination sequence, respectively. Without loss of generality, thenominal peak-to-valley amplitude swing in Eq. (83) can be assumed to beunit valued.

If the values of A_(i) and B_(i) are known, or are estimated as Â_(i)and {circumflex over (B)}_(i), imperfections in the illuminationsequence can be corrected by using the calculated intensity$\begin{matrix}{{\hat{I}}_{i} = \frac{I_{i} - {\hat{B}}_{i}}{{\hat{A}}_{i}}} & (84)\end{matrix}$to replace the measured intensity I_(i) in Eq. (82). In addition,phase-step errors can be eliminated if the actual values φ₁, φ₂, and φ₃can be determined and used in Eq. (82) rather than the assumed values{circumflex over (φ)}₁, {circumflex over (φ)}₂, and {circumflex over(φ)}₃ One approach to minimizing ripple is to vary the parameters A_(i),B_(i) and φ_(i) such that a metric indicating the degree of ripple in{circumflex over (φ)} is minimized. Besides being computationallyintensive to implement and requiring a multi-dimensional searchalgorithm to minimize the metric, it is difficult to find a suitablemetric for minimization without first unwrapping the phase function{circumflex over (φ)} over a representative subset of the surface. Oneexample of a metric that could be used, once unwrapping has taken place,is the standard deviation of the difference between {circumflex over(φ)} and a smoothed representation of {circumflex over (φ)}. This metrictends to decrease as the contributions due to ripple decrease.

Histogram-based derippling is superior to the above derippling approachbecause it does not require phase unwrapping and produces correctedparameters directly. Reference is now made to FIG. 22 for a continuedintroduction to this technique. FIG. 22 contains plots of the error(φ−{circumflex over (φ)})/(2π) as a function of the calculated quantity{circumflex over (φ)}/(2π) for different values of the parameters A_(i),B_(i), and φ_(i). This error is equivalent to the ripple-inducedcomponent of the fringe-number error ΔN and limits range resolution asdescribed in Eq. (32). In these curves, the assumed phase-step valuesare {circumflex over (φ)}₁=−120°, {circumflex over (φ)}₂=0°, and{circumflex over (φ)}₃=120°. Both φ and {circumflex over (φ)} areconsidered to be wrapped quantities that range between −π and +π so thatφ/(2π) and {circumflex over (φ)}/(2π) range between −½ and +½. Curve (a)shows the effects of amplitude variations A₁=0.9, A₂=1, A₃=1.2, Curve(b) corresponds to bias variations B₁=0.2, B₂=0, B₃=0.1, and Curve (c)displays the effects of having actual phase shifts φ₁=−105°, φ₂=0°, andφ₃=100° that differ from the assumed values. Finally, FIG. 22 a is aplot of the slope of the curves in FIG. 22, given by the derivative of φwith respect to {circumflex over (φ)} and denoted as φ′({circumflex over(φ)}). This slope oscillates about unity and converges to unity at allpoints as the assumed parameters approach their true values. Note thatrelatively large slope variations are produced for relatively smallerrors in ΔN, making slope a sensitive indicator of error in the assumedvalues of A_(i), B_(i), and φ_(i).

Clearly, FIG. 22 and FIG. 22 a contain a great deal of information aboutA_(i), B_(i), and φ_(i). For example, these plots illustrate that biasvariations introduce one ripple per fringe and that phase-step errorsintroduce two ripples per fringe. Amplitude variations produce a mixtureof one and two ripples per fringe. If it were possible to produce thecurves graphed in FIG. 22 or FIG. 22 a from analysis of the data, thedependence of the governing equations for these curves on A_(i), B_(i)and φ_(i) could be used to recover information about these parameters.Then the data could be derippled by calculating φ using these correctedparameters. The difficulty with this approach is that these graphspresuppose knowledge of the true values of φ.

The histogram approach overcomes this difficulty. In this approach, ahistogram is first made representing the relative occurrence of eachvalue of {circumflex over (φ)} in the measurement (or some subset of themeasurement). The histogram is created by dividing the range of possiblevalues of {circumflex over (φ)} into a finite number of bins andcounting the number of occurrences of {circumflex over (φ)} that fallwithin each bin. The histogram of {circumflex over (φ)} provides anumerical approximation to the probability density function of{circumflex over (φ)}, written as P({circumflex over (φ)}). The twoprobability density functions P({circumflex over (φ)}) and P(φ) can berelated through the well-known relationP({circumflex over (φ)})=P(φ)|φ′({circumflex over (φ)})|,   (85)which assumes that φ is a single-valued function of {circumflex over(φ)}. The derivative in Eq. (85) is what is graphed in FIG. 22 a. Theprobability distribution function P({circumflex over (φ)}) is availablefrom the data through calculation of the histogram of {circumflex over(φ)}. Although P(φ) in Eq. (85) is unknown, it is reasonable to assumefor most cases of interest that φ is uniformly distributed over itsrange of potential values. This assumption becomes more precise as thenumber of fringes covering the sampled surface area increases. Inpractice, the assumption that P(φ) is uniformly distributed has provento be adequate for even a relatively small number of fringes. Otherforms of P(φ), however, can be used for histogram-based derippling wherethe functional form of P(φ) is refined based on additional informationabout the surface.

Given P(φ), Eq. (85) can be used to relate the quantity P({circumflexover (φ)}) (obtained through calculating a histogram of the measuredvalues {circumflex over (φ)}) to the absolute value of the derivativeφ′({circumflex over (φ)}). Actual values of A_(i), B_(i) and φ_(i) canthen be determined based on the functional form of this derivative. Toillustrate how this may be done, the functional form of φ′({circumflexover (φ)}) is now analyzed in greater detail.

First, consider the case where there are no amplitude or bias variations(A_(i)=1 and B_(i)=0), but only phase step errors. For this case, it canbe shown that φ′({circumflex over (φ)}) takes the functional form$\begin{matrix}{{{\phi^{\prime}\left( \hat{\phi} \right)} = \frac{K}{1 + {K_{c2}\cos\quad\left( {2\hat{\phi}} \right)} + {K_{s2}{\sin\left( {2\hat{\phi}} \right)}}}},} & (86)\end{matrix}$where K, K_(c2), and K_(s2) are constants whose values depend on theassumed phase-step values {circumflex over (φ)}_(i) and the actualphase-step values φ_(i). The value of K (which is close to unity) can bedetermined from the other two constants K_(c2) and K_(s2), leaving onlytwo degrees of freedom in Eq. (86). The constants K_(c2) and K_(s2) maybe obtained from the shape of the histogram of {circumflex over (φ)} by,for example, taking the reciprocal of this histogram and calculating theFourier coefficients that correspond to the cos(2{circumflex over (φ)})and sin(2{circumflex over (φ)}) terms of a Fourier series expansion. TheFourier coefficients for the cos(2{circumflex over (φ)}) andsin(2{circumflex over (φ)}) terms are then normalized by the DC term ofthe Fourier series to yield K_(c2) and K_(s2), respectively.

Because Eq. (86) only has two degrees of freedom, it is not possible tofully recover the values of the three phase shifts φ₁, φ₂, and φ₃ fromthis equation. Instead, what can be recovered are the relative phaseshifts φ₁−φ₂, φ₂−φ₃, and φ₃−φ₁, two of which determine the third.Knowledge of these relative phase shifts is sufficient to completelyeliminate ripple. There is, however, a small offset error in theimproved calculation of {circumflex over (φ)} that remains. This offseterror is due to lack of knowledge of the true value of φ₂.

For simplicity, let the assumed phase shifts be equal, of magnitudeφ_(step), and centered about zero. These phase shifts can then beexpressed as {circumflex over (φ)}₁=−φ_(step), {circumflex over (φ)}₂=0,and {circumflex over (φ)}₃=φ_(step). Also assume that φ₂=0 by default.The values of φ₁ and φ₃ can then be determined from K_(c2) and K_(s2) bythe relations $\begin{matrix}{{\phi_{1} = {- {\cos^{- 1}\left( \frac{K_{c2} + K_{c2}^{2} + K_{s2}^{2} + {\left( {1 + K_{c2} - K_{s2}^{2}} \right)\cos\quad\phi_{step}} + {\left( {1 + K_{c2}} \right)K_{s2}\sin\quad\phi_{step}}}{\left( {1 + K_{c2}} \right)\left( {1 + {K_{c2}\cos\quad\phi_{step}} + {K_{s2}\sin\quad\phi_{step}}} \right)} \right)}}}{and}} & (87) \\{\phi_{3} = {{\cos^{- 1}\left( \frac{K_{c2} + K_{c2}^{2} + K_{s2}^{2} + {\left( {1 + K_{c2} - K_{s2}^{2}} \right)\cos\quad\phi_{step}} - {\left( {1 + K_{c2}} \right)K_{s2}\sin\quad\phi_{step}}}{\left( {1 + K_{c2}} \right)\left( {1 + {K_{c2}\cos\quad\phi_{step}} - {K_{s2}\sin\quad\phi_{step}}} \right)} \right)}.}} & (88)\end{matrix}$For the case previously assumed in Eq. (6) where φ_(step)=90°, Eqs. (87)and (88) reduce to $\begin{matrix}{{{\phi_{1} = {- {\cos^{- 1}\left( \frac{K_{c2} + K_{s2} + K_{c2}^{2} + K_{s2}^{2} + {K_{c2}K_{s2}}}{\left( {1 + K_{c2}} \right)\left( {1 + K_{s2}} \right)} \right)}}}{and}}\quad} & (89) \\{\phi_{3} = {{\cos^{- 1}\left( \frac{K_{c2} - K_{s2} + K_{c2}^{2} + K_{s2}^{2} - {K_{c2}K_{s2}}}{\left( {1 + K_{c2}} \right)\left( {1 - K_{s2}} \right)} \right)}.}} & (90)\end{matrix}$

As a further example of the application of histogram-based derippling,the technique is applied to a combination of phase-step errors andamplitude errors. Although the expression for φ′({circumflex over (φ)})for this case is much more complicated than Eq. (86), it can beapproximated for small values of A_(i)−1 and φ_(i)−{circumflex over(φ)}_(i) as $\begin{matrix}{{\phi^{\prime}\left( \hat{\phi} \right)} = {\frac{1}{1 + {K_{c1}\cos\quad\left( \hat{\phi} \right)} + {K_{s1}{\sin\left( \hat{\phi} \right)}} + {K_{c2}{\cos\left( {2\hat{\phi}} \right)}} + {K_{s2}{\sin\left( {2\hat{\phi}} \right)}}}.}} & (91)\end{matrix}$

Once again, the coefficients K_(c1), K_(s1), K_(c2), and K_(s2) areobtainable through Fourier analysis, being the corresponding Fouriercoefficients of a Fourier-series expansion of the reciprocal of thehistogram used to approximate φ′({circumflex over (φ)}).

Setting {circumflex over (φ)}₂=φ₂=0 and A₂=1, and allowing unequal stepsizes for the assumed values of {circumflex over (φ)}₁ and {circumflexover (φ)}₃, the newly approximated values of φ₁, φ₃, A₁, and A₃ can bedetermined from K_(c1), K_(s1), K_(c2), and K_(s2) through the relationsφ₁={circumflex over (φ)}₁ +K _(c1) sin {circumflex over (φ)}₁ +K_(s1)(1−cos {circumflex over (φ)}₁)+K _(c2)(sin {circumflex over(φ)}₃−sin({circumflex over (φ)}₁+{circumflex over (φ)}₃))−K _(s2)(cos{circumflex over (φ)}₃−cos({circumflex over (φ)}₁+{circumflex over(φ)}₃),  (92)φ₃={circumflex over (φ)}₃ +K _(c1) sin {circumflex over (φ)}₃ +K_(s1)(1−cos {circumflex over (φ)}₃)+K _(c2)(sin {circumflex over(φ)}₁−sin({circumflex over (φ)}₁+{circumflex over (φ)}₃)−K _(s2)(cos{circumflex over (φ)}₁−cos({circumflex over (φ)}₁+{circumflex over(φ)}₃)),  (93)A ₁=1+K _(c1)(1−cos {circumflex over (φ)}₁)−K _(s1) sin {circumflex over(φ)}₁,  (94)andA ₃=1+K _(c1)(1−cos {circumflex over (φ)}₃)−K _(s1) sin {circumflex over(φ)}₃.  (95)

Because Eqs. (92)-(95) are based on the small-error approximation givenby Eq. (91), the calculated values of φ₁, φ₃, A₁, and A₃ are improved,but not exact. If desired, higher accuracy can be obtained by iteratingthe procedure. To do so, the values of {circumflex over (φ)}₁ and{circumflex over (φ)}₃ calculated from Eqs. (92) and (93) become the newassumed values {circumflex over (φ)}₁ and {circumflex over (φ)}₃ in Eq.(82), and the values of A₁ and A₃ obtained from Eqs. (94) and (95)become the new assumed values Â₁ and Â₃ in Eq. (84). This procedureconverges rapidly, providing many significant decimal places ofprecision in only a few iterations.

As an additional benefit, bias variations Bi are handled automaticallywithin the context of this iterative approach. As the number ofiterations increases, the effects of bias variations B_(i) areeliminated by being folded into the other parameters A_(i) and φ_(i).This approach eliminates ripple, leaving a small offset error similar tothe error introduced by the lack of precise knowledge of φ₂.

Having described and shown the preferred embodiments of the invention,it will now become apparent to one of skill in the art that otherembodiments incorporating the concepts may be used and that manyvariations are possible which will still be within the scope and spiritof the claimed invention. It is felt, therefore, that these embodimentsshould not be limited to disclosed embodiments but rather should belimited only by the spirit and scope of the following claims.

1. An apparatus for projecting fringes onto a surface of an object, saidapparatus comprising: a) two sources of radiation having a spectraldistribution; b) a collimator in optical communication with said twosources, said collimator generating two substantially collimated beamsof broadband radiation; c) a diffractive grating in opticalcommunication with said collimator; and d) a lens in opticalcommunication with said diffractive grating, wherein said lens generatestwo images of radiation having a spatial distribution of spectralregions.
 2. The apparatus of claim 1 wherein each of said spectralregions of one of said sources is separated from a respective spectralregion of the other of said sources by a distance proportional to therespective wavelength of said spectral regions.
 3. The apparatus ofclaim 2 wherein said distance is linearly proportional to saidwavelength of said spectral regions.
 4. The apparatus of claim 2 whereinsaid distance comprises a midpoint equidistant from each of tworespective spectral regions and wherein said midpoint is fixed.
 5. Theapparatus of claim 1 wherein said two sources of radiation are coherentwith respect to one another.
 6. The apparatus of claim 1 wherein saidtwo sources of radiation have a spectral distribution that isnarrowband.
 7. The apparatus of claim 1 further comprising a detectorfor determining three-dimensional position information of a point onsaid surface of said object.
 8. The apparatus of claim 1 wherein the twosources of radiation are generated from a single source of radiation. 9.The apparatus of claim 1 further comprising a translator coupled to saiddiffractive grating, said translator shifting the relative phase of oneof said spectral regions with respect to the other of said spectralregions.
 10. A method for projecting fringes onto a surface of anobject, said method comprising the steps of: a) providing two sources ofradiation separated by a distance, each of said sources having aspectral distribution and being coherent with respect to the other ofsaid sources; b) illuminating a point on said surface of said objectwith said radiation from each of said sources; c) moving one of saidsources relative to the other of said sources; and d) detectingradiation scattered by said point on said surface of said object. 11.The method of claim 10 further comprising the step of changing the phaseof a spectral component in said spectral distribution from one of saidsources relative to the phase of a respective spectral component in saidspectral distribution from the other of said sources as measured at saidpoint on said surface of said object.